spring事务嵌套调用出现事务失效。


问题:

在一个serviceImpl类中,事务之间的嵌套调用,第二个事务设置传播行为为:如果当前有事务,则挂起当前事务,创建一个新事务;如果当前没有事务,则直接创建一个新事务。然后按理说第一个事务方法内发生异常不会影响第二个事务方法的,但是第一个事务方法发生异常后第二个方法居然也回滚了。怎么回事??

然后我不用嵌套调用,我直接用@Autowird注入进来的serviceimpl去调用方法,正常了。

原因:原来是spring事务是用动态代理实现的,但是方法的调用还是用被代理类去调用,这个被代理类调用第二个方法的时候,就不会触发动态代理了。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM