@Transactional 异常不回滚

一个方法加上@Transactional(rollbackFor=Exception.class)不生效
查找结果如下:
1.@Transactional是基于AOP动态代理做的,所以方法必须是public;其他的修饰符不生效。
2.Spring事务控制器在catch里面做了判断只有RuntimeException或者错误信息的时候才会回滚,故不是RuntimeException的异常不会回滚。

由于加上异常处理,导致没有生效,如果想要生效,手动添加RuntimeException异常。

参考链接
https://blog.csdn.net/lgq2626/article/details/79402583
https://blog.csdn.net/paul342/article/details/52330609?utm_source=blogxgwz7

原文地址:https://www.cnblogs.com/zwgblogs/p/13404142.html