Spring(4)终结篇-三大框架整合
Spring_day04(三大框架整合)
1.三大框架架构(整合原理)
web项目后端分为三层
2.导包(42)
hibernate:
hibernate/lib/required
hibernate/lib/jpa java的持久化规范(接口)数据库驱动包
Struts2:
struts-blank.war/WEB-INF/lib/*注意:javassist与hibernate中重复,删除低版本的
Struts2整合spring插件包
注意:这个包一旦导入,那么struts2在启动时寻找spring容器,如果找不到将会抛出异常
Spring
基本4+2:
core|beans|context|espression|logging|log4j
整合web:web包
spring-web
整合aop:4个包
spring-aop|spring-aspect|aop联盟|aop-weaving
整合hibernate和事务:4个包
spring-jdbc|spring-tx|c3p0|spring-orm
整合junit测试:test包
spring-test
标签库:
3.单独配置Spring容器
创建配置文件,并导入约束(4个)
beans|context|aop|tx配置spring随项目启动而启动
4.单独配置struts2
配置struts2主配置文件配置struts2的核心过滤器到web.xml
5.整合spring和struts2
1.导包(已经导了)
2.配置常量整合方案1:Struts2自己创建action,spring负责组装依赖属性 (不推荐)
不推荐理由:最好由spring完整管理action的生命周期,spring中的功能才能应用到action上
整合方案2:Spring负责创建action以及组装(重点)
6.单独配置hibernate
导包
导入实体类&orm元数据
配置主配置文件
7.spring整合hibernate
**整合原理:**将sessionFactory对象交给Spring容器管理
在spring中配置sessionFactory:
配置方案一(不推荐):
配置方案二(推荐):
8.spring整合c3p0连接池
9.spring整合hibernate操作数据库
Dao类创建:继承HibernateDaoSupport
Hibernate模板的操作
execute方法:findByCriteria方法:
spring中配置dao
10.spring的aop事务
准备工作:
xml配置aop事务
注解配置aop事务
service类中使用注解
11.扩大session作用范围
为了避免使用懒加载时出现no-session问题,需要扩大session作用范围
配置filter