Spring事务的五种配置.docVIP

  • 2
  • 0
  • 约7.35千字
  • 约 7页
  • 2017-10-18 发布于河北
  • 举报
Spring事务的五种配置.doc

Spring事务配置的五种方式? ??? 前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识。通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的。? ??? 总结如下:?(推荐使用第三种方式,也是项目中常用的方式) ??? Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource、TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分。? ??? DataSource、TransactionManager这两部分只是会根据数据访问方式有所变化,比如使用Hibernate进行数据访问时,DataSource实际为SessionFactory,TransactionManager的实现为HibernateTransactionManager。? ??? 具体如下图:? ?根据代理机制的不同,总结了五种Spring事务的配置方式,配置文件如下: 第一种方式:每个Bean都有一个代理 Java代码?? bean?id=sessionFactory???? ???????????class=org.springframework.orm.hibernate3.LocalSessionFactoryBean???? ???????property?name=configLocation?value=classpath:hibernate.cfg.xml?/???? ???????property?name=configurationClass?value=org.hibernate.cfg.AnnotationConfiguration?/?? ???/bean???? ?? ???!--?定义事务管理器(声明式的事务)?--???? ???bean?id=transactionManager?? ???????class=org.springframework.orm.hibernate3.HibernateTransactionManager?? ???????property?name=sessionFactory?ref=sessionFactory?/?? ???/bean?? ????? ???!--?配置DAO?--?? ???bean?id=userDaoTarget?class=com.bluesky.spring.dao.UserDaoImpl?? ???????property?name=sessionFactory?ref=sessionFactory?/?? ???/bean?? ????? ???bean?id=userDao???? ???????class=erceptor.TransactionProxyFactoryBean???? ??????????!--?配置事务管理器?--???? ??????????property?name=transactionManager?ref=transactionManager?/??????? ???????property?name=target?ref=userDaoTarget?/???? ????????property?name=proxyInterfaces?value=com.bluesky.spring.dao.GeneratorDao?/?? ???????!--?配置事务属性?--???? ???????property?name=transactionAttributes???? ???????????props???? ???????????????prop?key=*PROPAGATION_REQUIRED/prop?? ???????????/props???? ???????/property???? ???/bean???? lt;/beans?? 第二种方式:所有Bean共享一个代理基类 Java代码?? bean?id=sessionFactory???? ????????????class=org.springframework.orm.hibernate3.LocalSessionFactoryBean???? ????????property?name=configLocation?value=classpath:hibernate.cfg.xml?/???? ????????property?name=configurationClass?value=org.hibernate.cfg.AnnotationConfiguration?/?

文档评论(0)

1亿VIP精品文档

相关文档