Spring自动回滚的事务管理配置
2013-11-29 10:14
609 查看
Spring提供声明式的事务管理,其对异常的处理沿用EJB的约定,即RuntimeException(运行时异常)和java.rmi.RemoteException自动回滚。
除此之外,Spring可以定制设置,使得一些Exception也可以自动回滚事务。
1. 基于配置文件
<bean id="test"
class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager"><ref bean="transactionManager"/></property>
<property name="target"><ref bean="testTarget"/></property>
<property name="transactionAttributes">
<props>
<prop key="insert*">PROPAGATION_REQUIRED,-MyCheckedException</prop>
<prop key="update*">PROPAGATION_REQUIRED</prop>
<prop key="*">PROPAGATION_REQUIRED,readOnly</prop>
</props>
</property>
</bean>
在TransactionProxyFactoryBean的transactionAttributes属性中,定义遇到的Exception,例如MyCheckedException。
2. 基于Annotation
@Transactional(rollbackFor = MyCheckedException.class)
除此之外,Spring可以定制设置,使得一些Exception也可以自动回滚事务。
1. 基于配置文件
<bean id="test"
class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager"><ref bean="transactionManager"/></property>
<property name="target"><ref bean="testTarget"/></property>
<property name="transactionAttributes">
<props>
<prop key="insert*">PROPAGATION_REQUIRED,-MyCheckedException</prop>
<prop key="update*">PROPAGATION_REQUIRED</prop>
<prop key="*">PROPAGATION_REQUIRED,readOnly</prop>
</props>
</property>
</bean>
在TransactionProxyFactoryBean的transactionAttributes属性中,定义遇到的Exception,例如MyCheckedException。
2. 基于Annotation
@Transactional(rollbackFor = MyCheckedException.class)
相关文章推荐
- Spring如何设置让事务自动提交和回滚?Spring两种事务管理方式的配置及使用
- 关于Spring管理的事务如何配置回滚及try catch情况下的回滚
- Spring管理的事务:如何配置回滚及try catch情况下的回滚
- Spring与Hibernate的整合,不配置事务管理器,事务会自动提交(Hibernate默认手动提交)
- spring中配置hibernate事务管理,出错时事物不回滚
- 使用spring管理事务的时候,配置文件的主意事项。
- spring事物配置,声明式事务管理和基于@Transactional注解的使用 [转]
- spring事务管理默认回滚异常
- spring事物配置,声明式事务管理和基于@Transactional注解的使用
- spring事物配置,声明式事务管理和基于@Transactional注解的使用
- spring事物配置,声明式事务管理和基于@Transactional注解的使用
- spring事物配置,声明式事务管理和基于@Transactional注解的使用
- spring事物配置,声明式事务管理和基于@Transactional注解的使用
- spring框架学习(八)spring管理事务方式之注解配置
- spring的事务管理的原理(如何设置在Action或者在Service层进行事务拦截及其回滚)
- spring的annotation-driven配置事务管理器详解
- spring springmvc mybatics 中配置事务不回滚问题。。。
- spring整合Hibernate事务不能自动回滚
- Spring3.0配置多个事务管理器的方法
- spring事物配置,声明式事务管理和基于@Transactional注解的使用