《Java EE编程技术》综合应用系统开发_作业管理系统_Spring_Struts2_Hibernate_设计报告
《Java EE编程技术》综合应用系统开发_作业管理系统_Spring_Struts2_Hibernate_设计报告
目录
2. 导入其他组件(例如struts2、hibernate)与spring整合或spring扩展所采用的jar包: 2
①AspectJ支持包(让Spring 中启用 AspectJ 注解): 2
在整合时,为了便于管理配置信息,将所有的配置文件和属性文件全部放到一个文件夹(config)下统一进行管理。 3
(这里下面的文档结构由于格式原因,序号标题等产生了一些问题,请见谅)
Spring主要起到集成系统各组成部分的作用,利用Spring IoC实现对Bean的管理,通过配置方式实现对象及其依赖管理,降低模块间的依赖性,简化程序设计。
Spring的引入与整合:
例如:
①AspectJ支持包(让Spring 中启用 AspectJ 注解):
com.springsource.net.sf.cglib-2.2.0.jar
com.springsource.org.aopalliance-1.0.0.jar
com.springsource.org.aspectj.weaver-1.6.8.RELEASE.jar
hibernate-c3p0-4.3.10.Final.jar等。
struts2-spring-plugin-2.3.24.jar:基于XML的与Spring整合
struts2-convention-plugin-2.3.24.jar:基于注释的与Spring整合
将上述jar包导入到项目目录otherlib下,统一进行管理:
在整合时,为了便于管理配置信息,将所有的配置文件和属性文件全部放到一个文件夹(config)下统一进行管理。
spring下新建配置信息,需要加入到项目中:
applicationContext-beans.xml:专门用于各业务Bean的配置。
applicationContext.xml:给出Spring最基本的配置信息,例如,数据源、SessionFactory、事务处理等配置。
新增service层,降低耦合,实现逻辑的分层,使下层服务实现细节变化不会影响上层服务的调用,该系统采用分层次、分模块的方式实现,同时基于接口编程的思想,在持久层(例如IBaseDao接口)、服务层(IService接口)等都提供了公共接口。
总结:
上述配置完毕和编程实践后,项目的基本架构已经形成,从第一次采用Struts2+JDBC+C3P0模式到第二次Struts2+Hibernate+C3P0到最后的Spring实现对各类Bean的注入管理、对事务的声明式管理;使用Hibernate实现对数据库访问的设计;使用Struts2的MVC模式,给出控制层、视图等设计。
逐层进行增加新内容,使项目逻辑结构逐渐清晰并且使项目逐渐符合软件工程的编程思想,分层次、分模块、接口化、低耦合等等。
不足:采用SSH框架进行后端开发虽然层次清晰,但大量的配置文件信息和某些模块的僵化等问题仍然十分明显,可能这也是现在多采用SSM(Spring+SpringMVC+Mybatis)框架的原因吧(Spring家族支持相对简单的注解配置,这远比struts2注解配置要简短的多),此时企业项目也非常偏向于SpringBoot框架,在于它简单易上手,符合MVC架构分层次分模块的编程思想。但是过于简单的东西不足以体会框架本身的内部发展,例如SpringBoot框架隐藏了太多内容,并不会比SSH框架学到的内容多,站在学知识和理解编程思想的角度上,我们应先熟悉框架的逻辑思路然后接手简单的易行的解决方案才更加容易。
这次SSH开发实践收获颇丰,但遇到的问题也非常多,SSH框架以及新知识、新思想的学习过程还非常漫长,在这次开发之后将进一步深入了解一下SSH框架下的底层原理和一些高级特性。路漫漫其修远兮,吾将上下而求索!加油!