美文网首页
Spring事务什么时候会失效

Spring事务什么时候会失效

作者: 小丸子的呆地 | 来源:发表于2021-07-25 14:53 被阅读0次

    Spring事务什么时候会失效?

    Spring事务的原理是AOP,进行了切面增强,那么失效的根本原因是这个AOP不起作用了!常见情况有如下几种

    1、发生自调用,类里面使用this调用本类的方法(this通常省略),此时这个this对象不是代理类,而是 UserService对象本身!

    解决方法很简单,让那个this变成UserService的代理类即可!

    2、方法不是public的

    @Transactional 只能用于public 的方法上,否则事务不会失效,如果要用在非public 方法上,可以开启 Aspectj 代理模式。

    3、数据库不支持事务

    4、没有被spring管理

    5、异常被吃掉,事务不会回滚(或者抛出的异常没有被定义,默认为RuntimeException)

    相关文章

      网友评论

          本文标题:Spring事务什么时候会失效

          本文链接:https://www.haomeiwen.com/subject/rmximltx.html