Spring事务管理----事物回滚

Posted 玄机

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring事务管理----事物回滚相关的知识,希望对你有一定的参考价值。

Spring的事务管理默认只对未检查异常(java.lang.RuntimeException及其子类)进行回滚,如果一个方法抛出Checked异常,Spring事务管理默认不进行回滚。

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

启示 
这就要求我们在自定义异常的时候,让自定义的异常继承自RuntimeException,这样抛出的时候才会被Spring默认的事务处理准确处理。






以上是关于Spring事务管理----事物回滚的主要内容,如果未能解决你的问题,请参考以下文章

Spring-事务

Spring Boot 事物回滚

spring事物回滚机制 (事务异常回滚,捕获异常不抛出就不会回滚)

Spring Boot 事物回滚

SpringBoot事务注解@Transactional 事物回滚手动回滚事物

spring 嵌套事务问题