- 0
- 0
- 约2.27千字
- 约 10页
- 2026-02-05 发布于北京
- 举报
第二十章spring的事务与Hibernate整合理论部分
本章目标掌握使用spring管理Hibernate
Spring整合Hibernate由spring代理Hibernate的sessionFactory数据库映射文件也由spring容器加载Spring管理数据源
系统生成DAO类生成的数据访问类(DAO类)已经继承HibernateDaoSupportDao类已经自动具有了增删改查和其他的一些方法如下所示:具有自动提交事务的能力
使用Dao类数据已经被提交
Hibernate声明式事务的管理自己手动代理hibernate的事务功能!--使用hibernate的模板--beanid=hibernatetemplate class=org.springframework.orm.hibernate3.Hibern ateTemplatepropertyname=sessionFactoryrefbean=sessionFactory//property/bean!--spring管理hibernate事务--!--定义事务管理器(声明式的事务)--
???beanid=transactionManager
???????class=org.springframework.orm.hibernate3.HibernateTransactionManager
???????propertyname=sessionFactoryref=sessionFactory/
???/bean
Hibernate声明式事务的管理!--使用自动代理,代理所有的BUsiness类的所有方法--tx:adviceid=txAdvicetransaction-manager=transactionManager
???????tx:attributes
???????????tx:methodname=*propagation=REQUIRED/
???????/tx:attributes
???/tx:advice??
???aop:config
???????aop:pointcutid=interceptorPointCuts
???????????expression=execution(*com..business.*.*(..))/
???????aop:advisoradvice-ref=txAdvice
???????????pointcut-ref=interceptorPointCuts/???????
???/aop:config?
全注解注入方式?xmlversion=1.0encoding=UTF-8?
beansxmlns=
???xmlns:xsi=
???xmlns:context=
???xmlns:aop=
???xmlns:tx=
???xsi:schemaLocation=
??????????
??????????
??????????
??????????
??????????
???context:annotation-config/
???ponent-scanbase-package=com.business/
???tx:annotation-driventransaction-manager=transactionManager/
???beanid=sessionFactory
???????????class=org.springframework.orm.hibernate3.LocalSessionFactoryBean
???????…
???/bean
???!--定义事务管理器(声明式的事务)--
???beanid=transactionManager
???????class=org.springframework.orm.hibernate3.HibernateTransactionManager
???????propertyname=sessionFactoryref=sessionFactory/
???/bean
???
/beans
DAO上需加上@Transactional注解@Transactional
@Component(userDao)
publicclassUserDaoextendsHibernateDaoSupportimplementsUserDao{
???publicListUserlistUsers
原创力文档

文档评论(0)