service手动回滚

如果对spring配置了service层事物的管理。

在一些业务中需要回滚,正常来说抛出一个运行时异常即可

throw new RuntimeException();

只是这样的话代码就结束了,如果要返回给用户错误信息,不太方便,这时可以添加如下代码,在catch中手动回滚

TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();

这样既能正常返回错误信息,而又保持了事物的原子性。

原文地址:https://www.cnblogs.com/dulinan/p/12033022.html