天天看點

java在service中手動復原

import org.springframework.transaction.interceptor.TransactionAspectSupport;


TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
           

spring配置了service,在必要的業務場景下,需要将事務復原,但是程式沒有異常。

如果要傳回給使用者錯誤資訊,這時可以在代碼添加如下代碼,手動復原

TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
           

這樣既能正常傳回錯誤資訊,而又保持了事物的原子性。