当前位置: 首页> 房产> 市场 > Java面试题:Spring事务失效的场景

Java面试题:Spring事务失效的场景

时间:2025/7/10 4:07:21来源:https://blog.csdn.net/qq_55630615/article/details/140892993 浏览次数:0次

Spring事务失效的场景

异常捕获处理

在方法中通过异常捕获将异常处理掉了

就不会触发异常回滚

如果需要捕获的同时进行事务管理

可以在catch块中进行手动抛出异常

抛出检查异常

在方法上抛出检查异常

但Spring默认只会回滚Runtime异常

需要在@Transactional注解中设置rollbackfor=需要回滚的异常

非public方法(或使用final修饰)

因为Spring事务使用AOP实现

无论是CGLIB的继承代理

还是动态代理的接口代理都无法代理非public方法

方法的内部调用

因为内部调用使用this对象调用

并没有使用代理对象,不会走AOP被代理

需要注入自己解决

没有被Spring管理

多线程调用

Spring的事务是通过连接数据库实现

如果不在同一个线程内,那数据库的连接自然也不是一个

编程式事务

通过transactionTemplate.execute()方法控制事务

关键字:Java面试题:Spring事务失效的场景

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: