基于Maven的轻量级Java软件开发研究论文.pdf
基于Mave的轻量级Java软件开发研究论文
本文通过对多种Java软件架构进行比较分析,提出了一种轻量级软件开发的
方法,该方法使用Mave进行项目管理,采用SpringMVC和Hibernate框架搭建
分层的软件架构,解决了软件开发复杂,效率低,管理混乱的问题。
Java语言自从推出以来一直是最流行的编程语言,社会上越来越多的开发人
员利用Java技术进行软件开发,也出现了越来越多的Java框架,为了提高软件开
发的质量和效率,降低软件复杂度,需要选择合理的框架搭建软件架构,并且需要
相应的技术进行项目的构建和管理,本文研究适合中小企业软件开发的轻量级的
Java软件架构,并采用流行的项目管理工具Mave管理软件开发,以降低软件开
发的难度。
1、多种软件架构的比较
1)早期的Java企业级开发采用框架重量级EJB(EnterpriseJavaBean)。EJB
是定义了一个用于开发基于组件的企业多重应用程序的JavaEE标准。因为EJB容
器默认为应用提供了EJB规范中的所用功能,以它为架构的应用程序需要消耗大量
资源,具有侵入性,所以是一种重量级框架。
比如,EJB启动的时候,需要消耗大量的资源,内存,CPU等。其次还表现在
EJB巨大而复杂的规格说明以及代码规范。现在的EJB3.0增加了许多新的规范,
例如元数据支持,实体Bea模型访问Bea上下文的新方法和运行时环境等,但是
EJB仍然具有过于复杂的特性。
基于重量级框架EJB的软件架构没有很好的灵活性来应对需求的变化,缺乏实
用性,所以随着SOA和其它力量的兴起,软件开发也越来越多地选择轻量级的部署
平台。
2)常见的轻量级组合框架采用Struts2、Spring和Hibernate设计。Struts2
是一个主流的基于MVC模式的Web开发框架,该框架包括三部分:核心的控制器组
件、业务控制器和用户实现的业务逻辑组件。
其中,Struts2框架提供了核心控制器,用户实现业务控制层和业务逻辑层,
具体实现时业务逻辑层采用面向接口编程;Hibernate是一个基于Java的对象关系
映射(ORM)开源框架,对底层的JDBC进行了非常轻量级的封装,开发人员通过它可
以使用面向对象的编程思想操作数据库。
使用JDBC的应用都可以用Hibernate替代,并且Hibernate可以取代重量级
EJB在JavaEE架构中的应用,完成数据持久化操作;Spring是为了降低企业应用
开发的复杂性而创建的轻量级Java开源框架。
Spring框架的采用分层架构,分层架构的优点是使用者根据需求选择使用其
中的组件,并且可以提供集成的框架。Spring通过核心的控制反转(IoC)和面向切
面(AOP)功能,使用简单的JavaBean来完成以前由重量级EJB完成的应用。
Spring的应用不仅限于服务器端,任何的Java应用都可以选择需要的Spring
功能模块。所以,Spring是一个分层的一站式轻量级开源框架。
Struts2、Hibernate、Spring组合的轻量级架构如图1所示。
3)目前流行应用SpringMVC完成We开发。Spring的轻量级和低入侵性使
得其应用越来越多,由此发展了We模块,融合在SpringWebFlow里面,即
SpringMVC。
SpringMVC是提供了构建We应用程序的全功能MVC模块。该功能和Spring
其他功能一样是一种可插入的MVC架构[1]。SpringMVC轻量级框架侧重于减小开
发的复杂度,比较适用于开发中小型企业应用。所以在使用Spring进行We开发
时,越来越多的使用SpringMVC框架取代集成其他MVC开发框架(如Struts2)。
2、轻量级软件架构的搭建
基于了Spring和Hibernate轻量级的特点,采用SpringMVC和hibernate整
合完成分层的轻量级软件架构,应用Hibernate的对象持久化功能进行域模型层和
DAO(DataAccessObject)层的实现,应用SpringMVC定义控制层(Controller)和
视图层,应用Spring的对象管理功能