三大框架架构整合原理
![](https://img.haomeiwen.com/i3067756/e19d9388a1671702.png)
一.导包(41个包)
1. hibernate
![](https://img.haomeiwen.com/i3067756/4ef07ddbbb6be737.png)
2. struts2(javassist.jar与hibernate中重复保留高版本)
![](https://img.haomeiwen.com/i3067756/fda24f7e0de8bfdf.png)
![](https://img.haomeiwen.com/i3067756/8614914d4b978df7.png)
*struts整合spring插件包,注意,一旦导入struts2启动即寻找spring,没有spring则报错
3. spring
- 基本:4+2
beans|core|context|expression|logging|log4j - 整合web:web
spring-web - 整合aop:4个
spring-aop|spring-aspect|aop联盟|aopweaving - 整合jdbc事务:4个
spring-jdbc|spring-tx|c3p0|spring-orm - 整合Junit4测试:test包
spring-test
4. 标签库
standard.jar, jstl.jar
汇总
![](https://img.haomeiwen.com/i3067756/4c9acbf7af456b8c.png)
![](https://img.haomeiwen.com/i3067756/6872ecb1a68e0d9e.png)
二.单独配置spring容器
1. 创建配置文件,并导入约束schema
beans|context|aop|tx
![](https://img.haomeiwen.com/i3067756/f487626143424ef1.png)
2. 配置spring随项目启动web.xml
-
使spring随web项目启动而创建容器
image.png
-
配置spring配置文件位置参数
image.png
三.单独整合Struts2到web项目
1. src/下创建struts.xml主配置文件,并导入约束
![](https://img.haomeiwen.com/i3067756/5c389d8dd910590e.png)
2. web.xml中配置Struts2核心过滤器
![](https://img.haomeiwen.com/i3067756/ba44b6eaffa13156.png)
四.Struts2与Spring整合
1. 导包,struts2-spring-plugin.jar
2. 配置常量,于struts.xml中
![](https://img.haomeiwen.com/i3067756/d437b418ecc40ddc.png)
![](https://img.haomeiwen.com/i3067756/374b8baeb4d3155c.png)
![](https://img.haomeiwen.com/i3067756/37358a9983719c33.png)
3. 整合方案
-
方案一:
struts2自己创建action,spring负责组装依赖属性
不推荐使用,理由:最好由spring完整管理action生命周期,spring中功能才能应用到action上
image.png
- 方案二:
spring负责创建action及组装
-
spring的applicationContext.xml中,配置action对象及其依赖
image.png
-
struts.xml中,给action的class配置spring容器中对应的action
image.png
网友评论