@transaction失效
原先是没有这个问题的 。后来因为方法太长了。抽了一个额外的方法出来 导致事务失效。
方法里面插入两个表。按照原先的逻辑第二张表失败第一张表也应该回滚掉。实际情况是没有回滚。
复习了一下 transaction失效的几种情况
- 注解用在非public方法上 (我这次就是这个问题 因为他实现使用AOP)
- @Transactional 注解属性 propagation 设置错误
- @Transactional 注解属性 rollbackFor 设置错误
- 同一个类中方法调用,导致@Transactional失效 记得都要开transaction
- 异常被你的 catch“吃了”导致@Transactional失效
版权声明:本文为博主原创文章,未经博主允许不得转载。



