Spring管理事务默认回滚的异常

时间:2024-07-27 23:36:02

一、默认方式

Spring的事务管理默认只对出现运行期异常(java.lang.RuntimeException及其子类),Error进行回滚。 
如果一个方法抛出Exception或者Checked异常,Spring事务管理默认不进行回滚。

二、改变默认方式 
在@Transaction注解中定义noRollbackFor和RollbackFor指定某种异常是否回滚。 
@Transaction(noRollbackFor=RuntimeException.class) 
@Transaction(RollbackFor=Exception.class) 
这样就改变了默认的事务处理方式。