springboot2+mybatis多種方式實現(xiàn)多數(shù)據(jù)配置方法-創(chuàng)新互聯(lián)

業(yè)務(wù)系統(tǒng)復(fù)雜程度增加,為了解決數(shù)據(jù)庫I/O瓶頸,很自然會進行拆庫拆表分服務(wù)來應(yīng)對。這就會出現(xiàn)一個系統(tǒng)中可能會訪問多處數(shù)據(jù)庫,需要配置多個數(shù)據(jù)源。

成都創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都做網(wǎng)站、成都網(wǎng)站設(shè)計、菏澤網(wǎng)絡(luò)推廣、小程序設(shè)計、菏澤網(wǎng)絡(luò)營銷、菏澤企業(yè)策劃、菏澤品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們大的嘉獎;成都創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供菏澤建站搭建服務(wù),24小時服務(wù)熱線:13518219792,官方網(wǎng)址:muchs.cn

第一種場景:項目服務(wù)從其它多處數(shù)據(jù)庫取基礎(chǔ)數(shù)據(jù)進行業(yè)務(wù)處理,因此各庫之間不會出現(xiàn)重表等情況。

第二種場景:為了減輕寫入壓力進行讀寫分庫,讀走從庫,寫為主庫。此種表名等信息皆為一致。

第三種場景:以上兩種皆有。對于某些業(yè)務(wù)需要大數(shù)據(jù)量的匯總統(tǒng)計,希望不影響正常業(yè)務(wù)必須走從庫(表信息一致),某些配置信息不存在讀寫壓力,出現(xiàn)不分庫(表信息不一致)

項目源代碼:

https://github.com/zzsong/springboot-multiple-datasource.git

有三個目錄:

one:
    直接使用多@Bean配置,@MapperScan來路徑區(qū)分讀何庫

two:
    使用注解的方式來標識走何dataSource,AOP攔截注入動態(tài)數(shù)據(jù)源

third:
    使用spring的Bean命名策略進行區(qū)分數(shù)據(jù)來源

項目技術(shù)選型: springBoot2.2.5 + mybatis + druid + mysql

先看主要的pom包

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.2.5.RELEASE</version>
    <relativePath/> 
  </parent>

        <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-data-jdbc</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-data-jdbc</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-aop</artifactId>
    </dependency>
    <dependency>
      <groupId>org.mybatis.spring.boot</groupId>
      <artifactId>mybatis-spring-boot-starter</artifactId>
      <version>2.1.2</version>
    </dependency>

    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>8.0.19</version>
    </dependency>
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>druid-spring-boot-starter</artifactId>
      <version>1.1.21</version>
    </dependency>

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)建站muchs.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

當前標題:springboot2+mybatis多種方式實現(xiàn)多數(shù)據(jù)配置方法-創(chuàng)新互聯(lián)
本文地址:http://muchs.cn/article30/dejhpo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機、軟件開發(fā)、全網(wǎng)營銷推廣外貿(mào)網(wǎng)站建設(shè)、ChatGPT、網(wǎng)站制作

廣告

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

成都網(wǎng)站建設(shè)公司