SSH框架整合理论:
在SSH框架的JAVAweb项目的开发过程中,WEB层通常使用的是Struts2+jsp,service层使用的是javaBean,DAO层使用的是hibernate,而spring的使用覆盖三层。
使用了spring框架之后,我们可以把对象交给spring来管理。在WEB层中,所有action对象的创建和管理都可以交给spring来完成,这样Struts2就不用自己来new一个action,这一切都可以交给spring,直接向spring来要action对象。
在DAO层中hibernate框架,在这一层中hibernate–SessionFactory对象,包括session的获得,AOP事务,都可以交给spring,这样使用hibernate只需要做一些业务操作就可以了,
把其他的关于事务以及对象的管理都交给spring来完成。
简单的说,三大框架整合,就是把Struts2整合到spring当中,把hibernate整合到spring当中。
‘
‘
下面我们来进行三大框架整合:
整合的第一步,我们首先需要做的就是导包,导入三个框架需要用到的jar包,这是三大框架整个中的第一步,也是最重要的一步,导包完成后,我们的三大框架整合就已经完成了百分之六十。
如果三大框架所用到的jar包文件压缩包没有,可以去各个框架的相关网站上下载。
具体需要用的jar包如下
hibernate包:
- hibernate/lib/required
- hibernate/lib/jpahibernate/lib/jpa
- 数据库驱动包数据库驱动包
在hibernate中的lib下的required包中jar文件,都需要拿过来在hibernate中的lib下的required包中jar文件,都需要拿过来。
/lib/jpa java持久化规范
Struts2包:
如果有重复,删除版本低的那个。
Struts整合spring插件包
如果导入这个包,Struts在启动的时候就会寻找spring容器,如果还没有配置spring容器,单单是启动Struts,项目就会抛出异常。如果只是用Struts框架时,这个包可以不需要导入。
spring包:
- 基本包:4+2
- 整合web需要的web包整合web需要的web包
- 整合aop:4个包
- 整合aop:4个包整合aop:4个包
- 整合JDBC事务:4个整合JDBC事务:4个
- 整合Junit4测试:1个
基本包:4+2 core |beans |context| expression| logging| log4j
整合web需要的web包:spring-web
整合aop:4个包:spring-aop|spring-aspect|aop联盟|aopweaving
整合JDBC事务:spring-jdbc|spring-tx|c3p0|spring-orm
整合Junit4测试:spring-test
基本包:
整合web需要的web包
整合aop:4个包
整合JDBC事务
整合Junit4测试
截止到这里,用到的包就导入完了,但是如果需要使用的是eclipse,标签库的包还是需要自己导入一下。
导包完成
导包完成之后,就需要进行三大框架的整合步骤,首先是单独为项目配置每一个框架
单独配置spring容器
创建配置文件,并导入约束(4个)beans|context|aop|tx
首先,创建spring配置文件applicationContext.xml
然后切换到设计视图
然后再继续导入剩余的4个约束
beans约束
context约束
然后aop,tx 这样四个命名空间就导入完成了
代码如下:
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.2.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.2.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.2.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.2.xsd ">
<bean name="userAction " class="com.test.web.action.UserAction "></bean>