基于springboot框架应用开发技术的分析与研究

本栏目责任编辑:谢媛媛
软件设计开发
基于SpringBoot 框架应用开发技术的分析与研究
熊永平
(广州工商学院计算机科学与工程系软件教研室,广东广州510000)
摘要:在SpringBoot 中Spring 项目和Web 开发带来了较大的变化和影响,在本研究中通过阐述Spring 的项目,分析Spring⁃
Boot 技术概念和特点,比较SpringBoot 与传统JavaEE 开发模式差异,了解SpringBoot 对Web 开发的重要性。关键词:SpringBoot ;Java EE 开发体系;框架;架构设计中图分类号:TP311
文献标识码:A
文章编号:1009-3044(2019)36-0076-02
开放科学(资源服务)标识码(OSID):
近年来随着该项目出现,研究人员放弃过去的javaEE 体系,并且spring 项目开源社区扩大,使其应用也更加易于维护,在本研究中分析了SpringBoot 以及写Java EE 开发体系存在的差异,并且以该项目为核心的开发框架逐渐构成,并且分析了其部署测试管理问题等。
1SpringBoot 技术分析
Spring water 是近年来新开发的开发框架,在产生该项目时有明确目标,可进一步简化spring 应用,并且配置经过优化的配置方式能够简化出来的应用中的多项配置,除此之外,该项目采用了大量框架,能够对过去项目存在的稳定性问题以及版本过度依赖问题提供解决方案,同时利用该项目能够使众多组建项目更好利用,逐渐改变过去Web 应用开发模式。从技术上来看,主要包括以下几个特点:首先在利用该项目进行应用时如同点菜,可进行选配组成,生成初始项目,并能够在内部进行设置服务器和将项目打包为Jar 压缩包,进而为Docker 专门设计,可以将其作为StarterPOMs 配置方式使Maven 配置能够显著简化,SpringBoot 同时还能够为一些大型项目提供非业务功能特点,包括安全检测,健康检测,无须在项目中配置Xml 方式。
2SpringBoot 与JavaEE 开发模式的比较分析
基于Servlet 技术开发的Java web 技术相比过去来说发生显著变化,在这一过程中建立了独立整套形成独立开源项目和生态系统,并且相比过去来说采用ejb2.0,保留了学术风格,但是由spring 大量轻量级框架共同构成的,直到当前相比JavaEE 体系来说有显著差别,我们可发现开源社区是通过利用JAP 来改变JavaEE 体系的,从其标准上更加倾向在Hibenate,我们可以发现当Oracle 收购Java 之后,这对JavaEE 发展是十分重要的,然而从其开发模式上来说并没有产生显著变化。Spring⁃Boot 项目是以spring 作为基础框架,在该过程中主要涉及注入AOP 以及面向编程AOP ,将Annotation 引入到DK5中,使其出现Spring 项目之后并配置该方式,过去均采用Xml 配置方式的Web service 应用,其范围较广,但之后研究人员发现在配置xml 文件时发现书写难度大,很难进行后期调试的,因此Spring 当
时被大多数人所否定,主要是由于配置了较多的Xml 文件,而
SpringBoot 改变不仅能够为人们提供简单的配置文件格式,同时采用Maven ,即约定大于配置的这一理念,也被认为是惯例优先原则,从一定程度上是大多数配置信息能够按照过去的预定原则采用缺醒方式,为客户提供个性化的配置方式,在文件中可以使用Properties 文件以及Yaml 文件,而在其他配置中多使用的是其他配置类型设或Annotation ,也可以说SpringBoot 可以达到不使用Xml 文件配置方式,相比传统项目开发过程中能够为开发效果带来显著变化。SpringBoot 的项目开发从变化上是比较大的,此外在打包部署时也发生了较大变化,如下代码所示:
这一代码涵盖了很多问题,具体包括Main 是springboard 项
目的运行方式,此外对于Javaweb 项目来说需要借助外网服务器,无须war 形式部署,事实上,从另一程度上应用Tomcat 中,最终形成的打包方式包含项目所有文件以及外部服务器内嵌的jar 包,这种打包方式能够为Docker 部署提供重要的基础,同时还会使SpringBoot 项目中Java web 开发流程更加便捷,当项目真正使用SpringBoot 的项目完成项目开发时,不会再使用传统的开发方式。
3SpringBoot 开发模板的具体设计
我们从前台到后台顺序看,在页面上当前已经逐渐放弃使用JSP 这一技术,这也是目前技术发展主流趋势,平台模板索引主要包括Freemaker ,这种索引方式是包是指语言编程模块引擎,是通过模板生成文本输出的,此外还包括ThymImeleaf ,其与Framarker 运用原理是保持一致的,能够对页面图形应用逻辑进行有效分离设计,但由于SpringBoot 的项目采用ThymIme⁃leaf,主要是使其能够与Springmvc 实现良好融合,其次,该模板引擎相比其他引擎方式来,可实现浏览器直接显示,也是一种常见模板系数,但利用DOM 解析时无法对一些大文件Xml 进
收稿日期:2019-09-25
作者简介:熊永平,男(布依族),云南罗平人,讲师,工学硕士,研究方向为软件系统架构设计与开发。
76
软件设计开发
本栏目责任编辑:谢媛媛Computer Knowledge and Technology 电脑知识与技术
第15卷第36期(2019年12月)
行解析,因此在前端开发时通过借助使用JQuery 以及Boot⁃Strap ,在浏览器数据传输时可以通过json 的方式进行Restful 传输,当数据到达某一服务器之后再次进行框架请求,这一框架可代替原有的Struts2C 成为当前的控制层,当前达到持久层之后所涉及技术主要包括JPA ,Mybatis ,Hibenate 等技术,该项目采用JPA 融合Spring data 的方式,在引擎上选择Hibenate ,采用mysql 作为数据库采用IntelliJ IDEA 作为开发工具。
4SpringBoot 的部署测试变化分析
SpringBoot 的项目能够使Docker 类虚拟容器器的有效部
署,2013年国外公司发起Docke ,之后在短时间内快速发展起来,当前已经逐渐形成了以Docker 为核心的生态系统,之后将Linux 4引入Docker 后遵循该协议原则,目前其应用性效果中项目设计技术已经
占到了主流市场1/3以上,SpringBoot 针对Docker 这一技术开展了很多设计和优化,使其能够适应容器技术变化。多种工具丰富也使得Docker 应用性逐渐拓展,比如SpringBoot Maven plugin 方面来看,Docker 能够在正确的时间,地点进行高效运用,这也是Docker 应用构建隔离的重点,通过采用Javavm 方式能够有效进行硬件环境资源隔离,相比来说能够改变容器的外部环境,使程序移植更加便捷,这对于系统的运行维护来说是十分便利的。可以使用SpringBoot 在分布项目中引入Maven ,进一步使该插件可用于Docker 镜像Maben 构建中,在进行Dockerfile 镜像层编写后,可将该镜像推送到Docker⁃file 中。从一定程度上来看,Docker 是一个类似Gathul 原理的镜像托管平台,在项目开发过程中可以使用持续集成的方式,将Jenkins 结合GIT Hooks ,将代码Push 到相应的脚本文件中,又能够将Mavn 变异打包到镜像文件,最后部署到相应的Dock⁃erHub 中,将装有Docker 的服务器运行到相应的进项容器中,完成文件部署,除此之外由于springBoot 项目的模板引擎在通常情况下默认开启缓存,利用这一引擎实现相应文件的修改部署,同时开源部署可通过Jrebel 实现,能够便于开发调试效率的提升,并且在测试过程中也相比过去有了较大改变。在Spring⁃Boot 项目中按照过去starter 的做法,可以在相应的项目中引入SpringBoot starter tes ,无须人为管理,相比其他的测试方式来说更加便捷,其次,可根据SpringBoot 项目本身的特点在项目目录中进行测试类的添加,其次在测试类SpringBoot 中可以使用新网址来代替旧网址,可以使用两个常用Annotation,确保测试操作的回滚,在具体测试过程中需要按照Junit 开展。在控制层测
试类中实际上是将Webapplicationcontext 注入相应的Mockmvc 中,能够通过Springmvcv 本身的测试功能,在具体测试中主要涉及项目准备,能够为其提供有效的测试环境,通过Mockmvc 模块来模拟执行请求,增加验证和处理结果,收到相应的处理结果之后进行Assert 的下定义,之后进行响应请求,最后需要卸载整个测试中,所运用的Mockmvc 环境完成整体测试,总之利用SpringBoot 的项目以及springmvc 之间的关系测试,能够使整个测试更加便捷,为后期实现自动化提供基础。
5SpringBoot 管理、监控
对于web 系统开发来说,通过采用SpringBoot 项目能够转
变其开发模式,主要用于监控实际生产环境,然而如何对系统各功能项进行实时监控,需要通过各性能指标参数进行有效评估,在系统处于不稳定运行过程中,需要及时到故障问题,而不是当系统停止功能运行后才进行故障查,以防业务系统受到较大故障影响,尤其对于大规模互联网中需要引入相应的网管系统,但事实上这种系统在使用过程中监控流程比较粗略,利用Spring 可以对所有配置信息进行有效监控,当前该应用中所涉及的线程Bean 、环境、健康等相关信息,均可以采用管理端点监控的方式来实现,将所有的数据传递给开发者。当项目部署完成之后可以通过地址访问监控信息,甚至进行自定义端口,对于重要的目标指标进行监控,然而这一页任务市场上任何监控产品是无法实现的,此外对于sprinkle 的项目在外部系统中的开发,可采用JMX 来提升其功能,SpringBoot 项目对于Spring 平台是十
分重要的,无论在其特殊测试、部署或者功能开发方面都能够显著拓宽web 系统的开发应用,随着当前微框架的推广应用,SpringBoot 作为底层支持逐渐改变着Web 开发模式。
参考文献:
[1]张雷,王悦.基于SpringBoot 微服务架构下的MVC 模型研究[J].安徽电子信息职业技术学院学报,2018(4):1-9.
[2]吕宇琛.SpringBoot 框架在web 应用开发中的探讨[J].科技创新导报,2018(8).
[3]孙宇.基于SpringBoot 微框架的建筑项目管理系统[D].哈尔滨:哈尔滨工业大学,2018.
[4]谭一鸣.基于微服务架构的平台化服务框架的设计与实现[D].北京:北京交通大学,2017.
【通联编辑:张薇】
77

本文发布于:2024-09-22 07:30:59,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/484575.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:项目   能够   开发   进行   方式   配置   测试   监控
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议