簡體   English   中英

帶有期望的事務注釋

[英]Transactional anotation with expection

我希望在發生個性化異常后取消我的交易

@Transactional
public class MyClass{

    public void step1() throws Exception {
        throw new java.lang.Exception();
    }
    public void step2() throws Exception {
        throw new java.lang.Exception();
    }


}

但是當我的異常發生時什么都沒有發生。

這是正常的,默認情況下 spring 僅在引發未經檢查的異常時才會取消。

您必須在 class @Transactional 的頂部添加( rollbackFor = Exception. class )。

像那樣


@Transactional ( rollbackFor =  Exception.class )

public class MyClass{

    public void step1() throws Exception {
        throw new java.lang.Exception();
    }
    public void step2() throws Exception {
        throw new java.lang.Exception();
    }


}

現在,您的異常可以取消您的交易。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM