天天看点

java在service中手动回滚

import org.springframework.transaction.interceptor.TransactionAspectSupport;


TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
           

spring配置了service,在必要的业务场景下,需要将事务回滚,但是程序没有异常。

如果要返回给用户错误信息,这时可以在代码添加如下代码,手动回滚

TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
           

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