Spring中如何配置@Transactional注解

Spring中如何配置@Transactional 注解,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

創新互聯主營泰來網站建設的網絡公司,主營網站建設方案,APP應用開發,泰來h5小程序開發搭建,泰來網站營銷推廣歡迎泰來等地區企業咨詢

@Target({ElementType.METHOD, ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Inherited
@Documented
public @interface Transactional {
    @AliasFor("transactionManager")
    String value() default "";

    @AliasFor("value")
    String transactionManager() default "";

    Propagation propagation() default Propagation.REQUIRED;

    Isolation isolation() default Isolation.DEFAULT;

    int timeout() default -1;

    boolean readOnly() default false;

    Class<? extends Throwable>[] rollbackFor() default {};

    String[] rollbackForClassName() default {};

    Class<? extends Throwable>[] noRollbackFor() default {};

    String[] noRollbackForClassName() default {};
}

value 和 transactionManager 屬性
它們兩個是一樣的意思。當配置了多個事務管理器時,可以使用該屬性指定選擇哪個事務管理器。

propagation 屬性
事務的傳播行為,默認值為 Propagation.REQUIRED。

可選的值有:
Propagation.REQUIRED :如果當前存在事務,則加入該事務,如果當前不存在事務,則創建一個新的事務。
Propagation.SUPPORTS:如果當前存在事務,則加入該事務;如果當前不存在事務,則以非事務的方式繼續運行。
Propagation.MANDATORY:如果當前存在事務,則加入該事務;如果當前不存在事務,則拋出異常。
Propagation.REQUIRES_NEW:重新創建一個新的事務,如果當前存在事務,暫停當前的事務。
Propagation.NOT_SUPPORTED:以非事務的方式運行,如果當前存在事務,暫停當前的事務。
Propagation.NEVER:以非事務的方式運行,如果當前存在事務,則拋出異常。
Propagation.NESTED和 Propagation.REQUIRED 效果一樣。

isolation 屬性
public enum Isolation {
    DEFAULT(-1),
    READ_UNCOMMITTED(1),
    READ_COMMITTED(2),
    REPEATABLE_READ(4),
    SERIALIZABLE(8);

    private final int value;

    private Isolation(int value) {
        this.value = value;
    }

    public int value() {
        return this.value;
    }
}
事務的隔離級別,默認值為 Isolation.DEFAULT

可選的值有:
Isolation.DEFAULT
使用底層數據庫默認的隔離級別。
Isolation.READ_UNCOMMITTED Isolation.READ_COMMITTED Isolation.REPEATABLE_READ Isolation.SERIALIZABLE

timeout 屬性
事務的超時時間,默認值為-1。如果超過該時間限制但事務還沒有完成,則自動回滾事務。

readOnly 屬性
指定事務是否為只讀事務,默認值為 false;為了忽略那些不需要事務的方法,比如讀取數據,可以設置 read-only 為 true。

rollbackFor 屬性
用于指定能夠觸發事務回滾的異常類型,可以指定多個異常類型。

noRollbackFor 屬性
拋出指定的異常類型,不回滾事務,也可以指定多個異常類型。

看完上述內容,你們掌握Spring中如何配置@Transactional 注解的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注創新互聯行業資訊頻道,感謝各位的閱讀!

分享題目:Spring中如何配置@Transactional注解
網站鏈接:http://m.kartarina.com/article10/jedcgo.html

成都網站建設公司_創新互聯,為您提供微信公眾號標簽優化網站排名網站建設小程序開發軟件開發

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都網站建設
主站蜘蛛池模板: 亚洲欧洲国产综合AV无码久久| 成人无码一区二区三区| 13小箩利洗澡无码视频网站免费| 中文字幕在线无码一区二区三区 | 亚洲成a人无码亚洲成www牛牛| 亚洲中文字幕不卡无码 | 人妻丰满av无码中文字幕| 无码精品人妻一区二区三区免费| 亚洲AV无码一区二区三区网址 | 亚洲爆乳大丰满无码专区| 亚洲欧洲自拍拍偷午夜色无码| av中文无码乱人伦在线观看| 亚洲AV无码专区亚洲AV桃| 久久午夜无码鲁丝片午夜精品 | 久久久久亚洲精品无码系列| 国产精品va无码一区二区| 潮喷失禁大喷水无码| 亚洲AV无码一区二区三区电影| 亚洲人成网亚洲欧洲无码久久| 国产av永久精品无码| 国产精品成人一区无码| 久久久久亚洲AV无码专区首JN| 无码人妻丰满熟妇啪啪网站| 无码尹人久久相蕉无码| 日韩一区二区三区无码影院| 亚洲AV永久无码精品网站在线观看| 国产精品ⅴ无码大片在线看| 成人无码一区二区三区| 国产成人无码av片在线观看不卡| 亚洲AV无码精品国产成人| 伊人无码精品久久一区二区| 免费A级毛片无码A∨免费| 小13箩利洗澡无码视频网站| 亚洲AV无码一区东京热| 亚洲国产精品无码中文字| 亚洲AV无码一区二区乱子伦| 亚洲国产精品成人精品无码区在线 | 免费无码VA一区二区三区| 无码国产精品一区二区免费式芒果| 永久免费av无码网站yy| 亚洲AV人无码激艳猛片|