for循环里面事务不回滚

场景示例:

void methodA(){
    
    
for(T t : tList){
    
    
	methodB(t)
   }
}


 @Transactional(rollbackFor = Exception.class)
void methodB(T t){
    
    
// do
}

这其实是个误区,和for循环没必然关系,只是这种场景比较有代表性:循环中,单次回滚,之前执行的不能受影响;
也就是说我们要对methodB出现异常进行回滚,而methodA上面不能加事务注解,记住我们是methodA没加注解这句话,然后看这篇文章
Spring方法相互调用事务回滚总结

おすすめ

転載: blog.csdn.net/qq_36268103/article/details/112954687