三大框架整合(hibernate-spring-struts2)
方志朋 2019-12-22
三大框架整合说明
一.导包---41个包
二.单独配置spring容器---applicationContext.xml
(1)导入约束(beans|context|aop|tx)
(2)写数据库读取的properties文件
(3)配置c3p0连接池配置
(4)配置核心事务管理器,并将SessionFactory注入进去
(4-1)配置事务通知
(4-2)注解配置(aop)
(5)将hibernate中的SessionFactory配置到spring容器中去
(5-1)加载配置方案1:仍然使用外部的hibernate.cfg.xml配置信息
(5-2)不使用外部的hibernate.cfg.xml,加载配置方案2:在spring配置中放置hibernate配置信息
(6)整合struts2中的action------例如userAction创建bean并为其注入属性userService
(7)为userService创建bean并为其注入属性userDao
(8)为userDao创建bean并为其注入属性SessionFactory
三.在web.xml配置,配置spring随着项目的启动。
四.配置struts2.xml
(1)导入约束
(2)导入struts2与spring整合的jar包
(3)修改配置常量,将action的创建交给spring容器
(4)在对应包下写action信息
(4-1)整合方案1:class属性上仍然配置action的完整类名 ,struts2仍然创建action,由spring负责组装Action中的依赖属性
(4-2)class属性上填写spring中action对象的BeanName,完全由spring管理action生命周期,包括Action的创建,注意:需要手动组装依赖属性
五.spring配置hibernate.cfg.xml
(1)在hibernate不要配置隔离级别
(2)绑定的session也不要配置
(3)原理,将SessionFactory配置到spring容器中
(3-1)加载配置1,仍然使用外部的hibernate.cfg.xml配置信息
(3-2)加载配置2,在spring中配置hibernate配置信息
六.配置domain下的实体类和配套的实体类.hbm.xml
(1)创建 实体类的属性要用引用类型,同时加上toString,get/set方法
(2)配置 实体类.hbm.xml(很重要,如果配置错了,就会出现404错误)
七.配置web.action下的UserAction,需要配置到struts.xml中去。
八.配置dao下的UserDao以及impl下的UserDaoImpl
九.配置service下的UserService以及impl下的UserServiceImpl
十.扩大session的作用范围在web.xml中 --- 任何的filter一定要在struts的filter之前