Spring 声明式事物
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring 声明式事物相关的知识,希望对你有一定的参考价值。
一、xml配置事物管理器
<!-- 配置事物管理器 --> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource" /> </bean> <!-- 开启事务控制的注解支持 --> <tx:annotation-driven transaction-manager="transactionManager"/>
二、@Transactional
三、什么时候回滚事物
默认配置下,spring只有在抛出的异常为RuntimeException或其子类(Errors也会导致事务回滚),而其他非运行时异常则不会导致事务回滚。
可以明确的配置在抛出那哪些异常时回滚事务,包括checked异常。也可以明确定义那些异常抛出时不回滚事务。
还可以编程性的通过setRollbackOnly()方法来指示一个事务必须回滚,在调用完setRollbackOnly()后你所能执行的唯一操作就是回滚。
1 让checked例外也回滚:在整个方法前加上 @Transactional(rollbackFor=Exception.class)
2 让unchecked例外不回滚: @Transactional(notRollbackFor=RunTimeException.class)
参考:http://blog.csdn.net/bao19901210/article/details/41724355
以上是关于Spring 声明式事物的主要内容,如果未能解决你的问题,请参考以下文章
spring事物配置,声明式事务管理和基于@Transactional注解的使用