第一步 导入jar包
第二步 搭建struts2环境
(1)创建action,创建struts.xml配置文件,配置action
(2)配置struts2的过滤器
第三步 搭建hibernate环境
(1)创建实体类
(2)配置实体类和数据库表映射关系
(3)创建hibernate核心配置文件
- 引入映射配置文件
第四步 搭建spring环境
(1)创建spring核心配置文件
(2)让spring配置文件在服务器启动时候加载
- web.xml配置监听器
1 <listener> 2 <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 3 </listener>
指定spring配置文件位置
1 <context-param> 2 <param-name>contextConfigLocation</param-name> 3 <param-value>classpath:bean1.xml</param-value> 4 </context-param>
第五步 struts2和spring整合
(1)把action在spring配置(action多实例的)
1 <bean id="userAction" class="cn.cuibusi.action.UserAction" scope="prototype">
(2)在struts.xml中action标签class属性里面写 bean的id值
1 <package name="demo1" extends="struts-default" namespace="/"> 2 <action name="userAction" class="userAction"></action> 3 </package>
第六步 spring和hibernate整合
(1)把hibernate核心配置文件中数据库配置,在spring里面配置
1 <!-- 配置c3p0连接池 --> 2 <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> 3 <!-- 注入属性值 --> 4 <property name="driverClass" value="com.mysql.jdbc.Driver"></property> 5 <property name="jdbcUrl" value="jdbc:mysql:///spring_day04"></property> 6 <property name="user" value="root"></property> 7 <property name="password" value=""></property> 8 </bean>
(2)把hibernate的sessionFactory在spring配置
1 <!-- sessionFactory的创建交给spring进行管理 --> 2 <bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean"> 3 <!-- 注入dataSource --> 4 <property name="dataSource" ref="dataSource"></property> 5 <!-- 指定hibernate核心配置文件 --> 6 <property name="configLocations" value="classpath:hibernate.cfg.xml"></property> 7 </bean>
第七步 在dao里面使用hibernateTemplate
(1)在dao注入hibernateTemplate对象
(2)在hibernateTemplate对象中注入sessionFactory
1 <!-- 创建实现类的对象 --> 2 <bean id="userDaoImpl" class="cn.cuibusi.dao.UserDaoImpl"> 3 <property name="hibernateTemplate" ref="hibernateTemplate"></property> 4 </bean> 5 6 <!-- 创建hibernateTemplate --> 7 <bean id="hibernateTemplate" class="org.springframework.orm.hibernate5.HibernateTemplate"> 8 <property name="sessionFactory" ref="sessionFactory"></property> 9 </bean>
第八步 配置事务
1 <!-- 配置事务管理器 --> 2 <bean id="transactionManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager"> 3 <property name="sessionFactory" ref="sessionFactory"></property> 4 </bean> 5 <!-- 开启事务注解 --> 6 <tx:annotation-driven transaction-manager="transactionManager"/>
1
@Transactional 2 public class UserService { 3 }