《Spring3配置声明式事务.doc》由会员分享,可在线阅读,更多相关《Spring3配置声明式事务.doc(6页珍藏版)》请在金锄头文库上搜索。
1、Spring3.0/2.X配置声明式事务刘岩Email:1. 配置Spring3声明式事务在Spring3中配置声明式事务比早期版本显得更加简便。只需要几行配置文件+注解就可以实现面向切面的AOP事务2. 配置文件在Spring的配置如下在配置文件中并没有出现像以前版本的事务传播和隔离级别,也就是类似如下配置 因为可以通过注解Transactional完成事务传播、事务隔离的功能。3. DAO代码DAO实现类代码如下package impl;import org.springframework.orm.hibernate3.support.HibernateDaoSupport;import
2、org.springframework.transaction.annotation.Transactional;import pojo.Test;Transactionalpublic class PersonDAOImpl extends HibernateDaoSupport implements PersonDAO public void save(Test test) this.getHibernateTemplate().saveOrUpdate(test);Test test2 = new Test();test2.setId(3);test2.setName(3);this.g
3、etHibernateTemplate().saveOrUpdate(test2);throw new RuntimeException(主键重复);使用注解将此DAO实现类的所有方法进行了事务拦截,当遇到运行是异常时,事务回滚。不提交到数据库。当然可以指定单一原子方法进行隔离,方法可以指定Transactional(propagation=Propagation.NOT_SUPPORTED)Transactional(propagation=Propagation.MANDATORY)Transactional(propagation=Propagation.NESTED)Transactional(propagation=Propagation.REQUIRED)Transactional(propagation=Propagation.REQUIRES_NEW)Transactional(propagation=Propagation.SUPPORTS)同JTA标准的事务隔离传播一样,具体参考http:/ 以前是如何在Spring中配置事务的正好也总结一下原来的AOP事务在Spring2.X中,仅仅使用Hibernate作为持久层方案的配置如下/tx:a