分类: Java
2012-01-06 18:54:58
图示:
dataSource 定义数据源
| 注入数据源
sessionFactory
注入Hibernate | | 注入Hibernate
POJO userDAO transactionManager
注入DAO | | 注入事务 |
Action类 UserDAOProxy
步骤:
1 创建数据源dataSource
2 创建sessionFactory 并注入dataSource
3 创建事务管理对象transactionManager 并注入sessionFactory
4 创建userDAO 并注入sessionFactory
5 创建事务管理策略对象UserDAOProxy 并注入管理策略对象userDAO和所用的事务管理器transactionManager
6 创建Action 并注入userDAO
详细步骤:
1 数据源配置
在applicationContext.xml中添加一个名称为dataSource的
2 SessionFactory的配置
配置SessionFactory对象 为DAO层提供HIbernate的数据库连接对象 注入配置的dataSource对象
3 配置事务
为SessionFactory对象增加事务配置组件 并注入上面配置的SessionFactory对象
4 配置DAO组件
我们先配置该组件的Bean对象 一个基于HibernateTemplate的DAO类com.demo.hibernate.dao.UserDAO.java 并为这个对象注入SessionFactory对象
5 配置DAO事务
为上面配置的DAO对象配置事务组件 使得对userDAO的访问都在spring的事务监管下 改组件需要注入上面配置的事务对象transactionManager DAO对象userDAO 并配置事务管理的策略
6 创建Hibernate DAO 类
首先创建一个接受类 com.demo.hibernate.dao.IUserDAO.java 创建接口的原因是为了让Spring的AOP机制能够进行事务的管理 因为事务的管理是基于AOP实现的
在接口中声明要实现的操作函数
在UserDAO.java 中实现声明的函数
至此 就完成了使用HibernateTemplate访问数据库的DAO代码的开发了 下面修改Action中的业务函数来调用DAO中的函数
7 修改LoginAction访问UserDAO进行登录验证
首先为LoginAction添加一个变量
为applicationContext.xml中的loginAction的配置注入userDAO变量
修改LoginAction处理类中用户登录验证函数isValid() 使用被注入对象userDAO的isValid()函数
8 RegisterAction访问UserDAO进行用户注册
方法如7
这样就形成了Spring+Hibernate架构