一、默认方式
Spring的事务管理默认只对出现运行期异常(java.lang.RuntimeException及其子类),Error进行回滚。
如果一个方法抛出Exception或者Checked异常,Spring事务管理默认不进行回滚。
二、改变默认方式
在@Transaction注解中定义noRollbackFor和RollbackFor指定某种异常是否回滚。
@Transaction(noRollbackFor=RuntimeException.class)
@Transaction(RollbackFor=Exception.class)
这样就改变了默认的事务处理方式。