最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring事務(wù)失效之常見場景分析

 更新時間:2023年04月26日 09:35:52   作者:啊荻~  
這篇文章主要介紹了Spring事務(wù)失效之常見場景,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

一、事務(wù)方法訪問修飾符非public,導(dǎo)致事務(wù)失效

1、實(shí)例

2、解決

方式一:將方法修飾符改為public

方式二:開啟AspectJ代理模式

3、注意

  

如果事務(wù)是static、final的,同樣無法通過動態(tài)代理,事務(wù)也是不會生效的?! ?/p>

Spring的聲明式事務(wù)是基于動態(tài)代理實(shí)現(xiàn)的,我們無法重寫final修飾的方法;  

不管是JDK動態(tài)代理還是Cglib的動態(tài)代理,就是要通過代理的方式獲取到代理的具體對象,而static方法修飾的方法是屬于類的,不屬于任何對象,所以static方法不能被重寫,即便寫法上是重寫,但是并不具備重寫的含義,也就是說static方法也不被進(jìn)行動態(tài)代理。

二、@Transactional注解的方法拋出的異常不是spring的事務(wù)支持的異常,導(dǎo)致事務(wù)失效

1、實(shí)例

2、解決

 

3、注意  

spring的事務(wù)只支持未檢查異常(unchecked),不支持已檢查異常(checked)。

三、數(shù)據(jù)表本身是不支持事務(wù),導(dǎo)致事務(wù)失效

1、實(shí)例

如果使用MySQL且存儲引擎是MyISAM,則事務(wù)是不起作用的,原因是MyIASM不支持事務(wù)。 

2、解決  

數(shù)據(jù)表可以改為InnoDB存儲引擎,支持事務(wù)

四、@Transactional注解所在的類沒有被spring管理,導(dǎo)致事務(wù)失效

1、實(shí)例

2、解決  

加上@Service注解或者使用其他能注冊成Spring Bean的方式或注解。

五、catch掉異常之后,沒有再次拋出異常,導(dǎo)致事務(wù)失效

1、實(shí)例

2、解決

3、注意  

如果在加有事務(wù)的方法內(nèi),使用了try…catch…語句塊對異常進(jìn)行了捕獲,而catch語句塊沒有throw new RuntimeException異?;蛘逽pring支持的異常類型,則事務(wù)不會回滾。

六、方法自身(this)調(diào)用問題,導(dǎo)致事務(wù)失效

非事務(wù)方法insert()中調(diào)用的自身類的事務(wù)方法insertUser()。

1、實(shí)例

2、解析

3、解決

方式一:

方式二:

方式三:

方式四:

七、數(shù)據(jù)源沒有配置事務(wù)管理器

導(dǎo)致事務(wù)失效

八、傳播類型不支持事務(wù)

導(dǎo)致事務(wù)失效

1、實(shí)例

2、注意

九、多線程調(diào)用,導(dǎo)致事務(wù)失效

1、實(shí)例

2、解析

總結(jié)

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java實(shí)現(xiàn)消消樂中的消除功能

    Java實(shí)現(xiàn)消消樂中的消除功能

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)消消樂中的消除功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • Java泛型模擬scala實(shí)現(xiàn)自定義ArrayList方式

    Java泛型模擬scala實(shí)現(xiàn)自定義ArrayList方式

    這篇文章主要介紹了Java泛型模擬scala實(shí)現(xiàn)自定義ArrayList方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • java新增關(guān)聯(lián)的三張表,每張表要求都插入集合,代碼實(shí)現(xiàn)方式

    java新增關(guān)聯(lián)的三張表,每張表要求都插入集合,代碼實(shí)現(xiàn)方式

    這篇文章主要介紹了java新增關(guān)聯(lián)的三張表,每張表要求都插入集合,代碼實(shí)現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • spring無法引入注解及import org.springframework.web.bind.annotation.*報(bào)錯的解決

    spring無法引入注解及import org.springframework.web.bind.annota

    本文主要介紹了spring無法引入注解及import org.springframework.web.bind.annotation.*報(bào)錯的解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • springboot如何集成Minio文件服務(wù)器

    springboot如何集成Minio文件服務(wù)器

    這篇文章主要介紹了springboot如何集成Minio文件服務(wù)器問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • SpringBoot多線程與任務(wù)調(diào)度總結(jié)

    SpringBoot多線程與任務(wù)調(diào)度總結(jié)

    多線程與任務(wù)調(diào)度是java開發(fā)中必須掌握的技能,本文主要介紹了SpringBoot多線程與任務(wù)調(diào)度總結(jié),具有一定的參考價值,感興趣的可以了解一下
    2023-12-12
  • IDEA解決src和resource下創(chuàng)建多級目錄的操作

    IDEA解決src和resource下創(chuàng)建多級目錄的操作

    這篇文章主要介紹了IDEA解決src和resource下創(chuàng)建多級目錄的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • 詳解Java實(shí)踐之抽象工廠模式

    詳解Java實(shí)踐之抽象工廠模式

    抽象工廠模式用于產(chǎn)品族的構(gòu)建。抽象工廠是所有形態(tài)的工廠模式中最為抽象和最具一般性的一種形態(tài)。抽象工廠是指當(dāng)有多個抽象角色時使用的一種工廠模式。抽象工廠模式可以向客戶端提供一個接口,使客戶端在不必指定產(chǎn)品的具體情況下,創(chuàng)建多個產(chǎn)品族中的產(chǎn)品對象
    2021-06-06
  • 詳解springMVC—三種控制器controller

    詳解springMVC—三種控制器controller

    本篇文章主要介紹了springMVC—三種控制器controller,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • java中不同版本JSONObject區(qū)別小結(jié)

    java中不同版本JSONObject區(qū)別小結(jié)

    本文主要介紹了java中不同版本JSONObject區(qū)別小結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-02-02

最新評論

长顺县| 阳城县| 钟祥市| 镇坪县| 石家庄市| 富裕县| 加查县| 梁河县| 华坪县| 淅川县| 分宜县| 邵武市| 芷江| 葫芦岛市| 五河县| 五寨县| 洛隆县| 颍上县| 曲周县| 临湘市| 长兴县| 大厂| 巨鹿县| 靖远县| 台湾省| 大埔县| 黄平县| 磐安县| 揭阳市| 嵊州市| 九龙坡区| 满洲里市| 綦江县| 城固县| 福清市| 西林县| 乐安县| 德保县| 聂荣县| 萨迦县| 民勤县|