spring中事务失效的场景有哪些?

小明 2025-05-05 13:40:13 8

异常捕获处理

在index.php/tags-41973.html" class="superseo">���法中已经将异常捕获处理掉并没有抛出。

事务只有捕捉到了抛出的异常才可以进行处理,如果有异常业务中直接捕获处理掉没有抛出,事务是无法感知到的。

解决:在catch块throw抛出异常。

抛出检查异常

spring默认只会回滚非检查异常。

解决:

非public方法导致事务失效

spring为方法创建代理,添加事务通知,前提条件都需要方法是public的。

解决:把方法改为public。

The End
微信