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

解決Springboot不能自動(dòng)提交數(shù)據(jù)庫(kù)連接問(wèn)題

 更新時(shí)間:2024年09月29日 08:42:56   作者:謝月  
在使用SSM框架開(kāi)發(fā)時(shí),若在同一Service內(nèi)部方法間互相調(diào)用,直接使用this關(guān)鍵字會(huì)導(dǎo)致事務(wù)管理失效,從而引發(fā)如數(shù)據(jù)庫(kù)連接不足等問(wèn)題,原因是通過(guò)this調(diào)用不會(huì)經(jīng)過(guò)Spring的代理,因此不會(huì)自動(dòng)進(jìn)行事務(wù)處理

一、問(wèn)題描述

之前一直用的公司框架,所以SSM框架不是特別熟悉,然后新項(xiàng)目采用SSM狂架搭建的。

在其中一個(gè)需求中,我在service層類的方法內(nèi)部調(diào)用了該類的其他方法:

并且是采用this調(diào)用該類的其他方法。

如下:

就是這波操作使得功能一上線就直接拋出異常,數(shù)據(jù)庫(kù)連接不夠。

后經(jīng)過(guò)排查采用this調(diào)用的方法不會(huì)走spring框架自行提交數(shù)據(jù)庫(kù)連接,必須手動(dòng)提交數(shù)據(jù)庫(kù)連接。

因此就會(huì)使得當(dāng)訪問(wèn)量達(dá)到一定量就會(huì)拋出異常。

二、修改方式一(交由spring提交事務(wù))

只需要將用this調(diào)用的方式都改如下即可:將實(shí)例交由spring管理,即可自動(dòng)提交。

三、修改方式二(手動(dòng)提交事務(wù))

@Resource(name="transactionManager")
private DataSourceTransactionManager transactionManager;

DefaultTransactionDefinition transDefinition = new DefaultTransactionDefinition();
//開(kāi)啟新事物
transDefinition.setPropagationBehavior(DefaultTransactionDefinition.PROPAGATION_REQUIRES_NEW);
TransactionStatus transStatus = transactionManager.getTransaction(transDefinition);
try {
    //TODO
    transactionManager.commit(transStatus);
} catch (Exception e) {
    transactionManager.rollback(transStatus);
}

總結(jié)

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

相關(guān)文章

  • Java 迪杰斯特拉算法實(shí)現(xiàn)查找最短距離的實(shí)現(xiàn)

    Java 迪杰斯特拉算法實(shí)現(xiàn)查找最短距離的實(shí)現(xiàn)

    這篇文章主要介紹了Java 迪杰斯特拉算法實(shí)現(xiàn)查找最短距離的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • SpringBoot Maven 項(xiàng)目 pom 中的 plugin 插件用法小結(jié)

    SpringBoot Maven 項(xiàng)目 pom 中的 plugin&n

    本文詳細(xì)介紹了Spring Boot Maven項(xiàng)目打包成jar文件時(shí)使用的spring-boot-maven-plugin插件,深入探討了插件的配置元素,結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧
    2025-01-01
  • java連接mysql數(shù)據(jù)庫(kù)詳細(xì)步驟解析

    java連接mysql數(shù)據(jù)庫(kù)詳細(xì)步驟解析

    以下是對(duì)java連接mysql數(shù)據(jù)庫(kù)的具體詳細(xì)步驟進(jìn)行了分析介紹,需要的朋友可以過(guò)來(lái)參考下
    2013-08-08
  • springboot項(xiàng)目整合mybatis并配置mybatis中間件的實(shí)現(xiàn)

    springboot項(xiàng)目整合mybatis并配置mybatis中間件的實(shí)現(xiàn)

    這篇文章主要介紹了springboot項(xiàng)目整合mybatis并配置mybatis中間件的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Java多線程編程:線程的原理和使用安全

    Java多線程編程:線程的原理和使用安全

    文章主要介紹了線程的基本概念、線程和進(jìn)程的區(qū)別、線程的創(chuàng)建方法、線程的常見(jiàn)方法與屬性、線程的安全問(wèn)題等,線程是程序執(zhí)行流的最小單位,可以并發(fā)執(zhí)行并共享數(shù)據(jù),線程的生命周期狀態(tài)包括新建、就緒、運(yùn)行、阻塞、死亡等
    2026-05-05
  • java實(shí)現(xiàn)小球碰撞功能

    java實(shí)現(xiàn)小球碰撞功能

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)小球碰撞功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-01-01
  • Mybatis注解實(shí)現(xiàn)多數(shù)據(jù)源讀寫分離詳解

    Mybatis注解實(shí)現(xiàn)多數(shù)據(jù)源讀寫分離詳解

    這篇文章主要給大家介紹了關(guān)于Mybatis注解實(shí)現(xiàn)多數(shù)據(jù)源讀寫分離的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Mybatis具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • IDEA在創(chuàng)建包時(shí)如何把包分開(kāi)實(shí)現(xiàn)自動(dòng)分層(方法詳解)

    IDEA在創(chuàng)建包時(shí)如何把包分開(kāi)實(shí)現(xiàn)自動(dòng)分層(方法詳解)

    這篇文章主要介紹了IDEA在創(chuàng)建包時(shí)如何把包分開(kāi)實(shí)現(xiàn)自動(dòng)分層,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-09-09
  • Spring?WebFlux?與?WebClient?使用指南及最佳實(shí)踐

    Spring?WebFlux?與?WebClient?使用指南及最佳實(shí)踐

    WebClient是Spring WebFlux模塊提供的非阻塞、響應(yīng)式HTTP客戶端,基于Project Reactor實(shí)現(xiàn),適用于高并發(fā)場(chǎng)景spring?webclient,本文給大家介紹Spring?WebFlux與WebClient使用指南及最佳實(shí)踐,感興趣的朋友一起看看吧
    2025-07-07
  • Java基于遞歸和循環(huán)兩種方式實(shí)現(xiàn)未知維度集合的笛卡爾積算法示例

    Java基于遞歸和循環(huán)兩種方式實(shí)現(xiàn)未知維度集合的笛卡爾積算法示例

    這篇文章主要介紹了Java基于遞歸和循環(huán)兩種方式實(shí)現(xiàn)未知維度集合的笛卡爾積算法,結(jié)合實(shí)例形式分析了Java使用遞歸與循環(huán)兩種方式實(shí)現(xiàn)未知維度集合的笛卡爾積相關(guān)概念、原理與操作技巧,需要的朋友可以參考下
    2017-12-12

最新評(píng)論

阿巴嘎旗| 临安市| 南阳市| 高州市| 阜康市| 乐昌市| 金堂县| 泾川县| 绥芬河市| 化州市| 奉节县| 子洲县| 洱源县| 扬州市| 桦南县| 龙岩市| 兰溪市| 外汇| 土默特右旗| 长沙县| 莲花县| 静海县| 张家港市| 阜宁县| 承德市| 崇左市| 宁德市| 麟游县| 铜鼓县| 武汉市| 平湖市| 恩平市| 河西区| 龙岩市| 衡南县| 乐安县| 连平县| 清涧县| 兴海县| 河东区| 临城县|