亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

SpringBoot+MybatisPlus實(shí)現(xiàn)sharding-jdbc分庫(kù)分表的示例代碼

 更新時(shí)間:2024年03月25日 16:49:05   作者:黑辰King  
本文主要介紹了SpringBoot+MybatisPlus實(shí)現(xiàn)sharding-jdbc分庫(kù)分表的示例代碼,以分庫(kù),分表,分庫(kù)分表三種方式來(lái)實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下

介紹

學(xué)習(xí)sharding-jdbc的分庫(kù)分表功能,以分庫(kù),分表,分庫(kù)分表三種方式來(lái)實(shí)現(xiàn),此文章只展示分庫(kù)分表,為簡(jiǎn)潔其余兩種分篇寫(xiě)

1.環(huán)境搭建

代碼結(jié)構(gòu)

在這里插入圖片描述

數(shù)據(jù)庫(kù)搭建(2個(gè)mysql數(shù)據(jù)庫(kù)),并在2個(gè)庫(kù)下都添加多個(gè)相同結(jié)構(gòu)的表

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

pom.xml依賴(lài)

 <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.1.20</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.47</version>
        </dependency>
        <dependency>
            <groupId>org.apache.shardingsphere</groupId>
            <artifactId>sharding-jdbc-spring-boot-starter</artifactId>
            <version>4.0.0-RC1</version>
        </dependency>
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.0.5</version>
        </dependency>
    </dependencies>

application.yml (配置文件分離,結(jié)構(gòu)更清晰)

spring:
  main:
    allow-bean-definition-overriding: true # 需要配置否則加載數(shù)據(jù)源報(bào)錯(cuò) 是否允許定義重名的bean對(duì)象覆蓋原有的bean
  profiles:
    active: databasetable

mybatis-plus:
  mapperLocations: classpath*:mapper/*Mapper.xml

application-databasetable.yml

# 數(shù)據(jù)源命名
spring.shardingsphere.datasource.names=book2021,book2022

# datasource1
spring.shardingsphere.datasource.book2021.type=com.alibaba.druid.pool.DruidDataSource
spring.shardingsphere.datasource.book2021.driver-class-name=com.mysql.jdbc.Driver
spring.shardingsphere.datasource.book2021.url=jdbc:mysql://192.168.31.212:3306/book2021?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8&allowMultiQueries=true
spring.shardingsphere.datasource.book2021.username=root
spring.shardingsphere.datasource.book2021.password=123

# datasource2
spring.shardingsphere.datasource.book2022.type=com.alibaba.druid.pool.DruidDataSource
spring.shardingsphere.datasource.book2022.driver-class-name=com.mysql.jdbc.Driver
spring.shardingsphere.datasource.book2022.url=jdbc:mysql://192.168.31.212:3307/book2022?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8&allowMultiQueries=true
spring.shardingsphere.datasource.book2022.username=root
spring.shardingsphere.datasource.book2022.password=123



#庫(kù)名.表名
spring.shardingsphere.sharding.tables.book.actual-data-nodes=book202${1..2}.book_info_202${1..2}0${1..9},book202${1..2}.book_info_202${1..2}1${0..2}

# 數(shù)據(jù)庫(kù)分片字段
spring.shardingsphere.sharding.tables.book.database-strategy.standard.sharding-column=create_time
# 數(shù)據(jù)庫(kù)分片策略
spring.shardingsphere.sharding.tables.book.database-strategy.standard.preciseAlgorithmClassName=cn.xwl.xshardingjdbc.config.database.PreciseDatabaseShardingAlgorithm
spring.shardingsphere.sharding.tables.book.database-strategy.standard.rangeAlgorithmClassName=cn.xwl.xshardingjdbc.config.database.RangeDatabaseShardingAlgorithm

# 數(shù)據(jù)表分片字段
spring.shardingsphere.sharding.tables.book.table-strategy.standard.sharding-column=create_time
# 數(shù)據(jù)表分表策略
spring.shardingsphere.sharding.tables.book.table-strategy.standard.preciseAlgorithmClassName=cn.xwl.xshardingjdbc.config.table.PreciseTableShardingAlgorithm
spring.shardingsphere.sharding.tables.book.table-strategy.standard.rangeAlgorithmClassName=cn.xwl.xshardingjdbc.config.table.RangeTableShardingAlgorithm

# 打印sql
spring.shardingsphere.props.sql.show=true




2.代碼編寫(xiě)

同分庫(kù),分表兩篇文中的一致,這里不粘貼了,項(xiàng)目地址 本測(cè)試Demo的Gitee地址

到此這篇關(guān)于SpringBoot+MybatisPlus實(shí)現(xiàn)sharding-jdbc分庫(kù)分表的示例代碼的文章就介紹到這了,更多相關(guān)SpringBoot MybatisPlus sharding-jdbc分庫(kù)分表內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java NIO實(shí)現(xiàn)群聊系統(tǒng)

    Java NIO實(shí)現(xiàn)群聊系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了Java NIO實(shí)現(xiàn)群聊系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • Java線(xiàn)程池運(yùn)行狀態(tài)監(jiān)控實(shí)現(xiàn)解析

    Java線(xiàn)程池運(yùn)行狀態(tài)監(jiān)控實(shí)現(xiàn)解析

    這篇文章主要介紹了Java線(xiàn)程池運(yùn)行狀態(tài)監(jiān)控實(shí)現(xiàn)解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10
  • SpringBoot中郵件任務(wù)的使用

    SpringBoot中郵件任務(wù)的使用

    這篇文章主要介紹了SpringBoot中郵件任務(wù)的使用,SpringBoot?郵件任務(wù)是指使用SpringBoot框架來(lái)實(shí)現(xiàn)郵件發(fā)送和接收的功能,通過(guò)SpringBoot的自動(dòng)配置和簡(jiǎn)化的開(kāi)發(fā)流程,我們可以輕松地集成郵件功能到我們的應(yīng)用程序中,需要的朋友可以參考下
    2023-10-10
  • spring源碼下載、編譯、debug的詳細(xì)教程

    spring源碼下載、編譯、debug的詳細(xì)教程

    這篇文章主要介紹了spring源碼下載、編譯、debug的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • Spring Cloud EureKa Ribbon 服務(wù)注冊(cè)發(fā)現(xiàn)與調(diào)用

    Spring Cloud EureKa Ribbon 服務(wù)注冊(cè)發(fā)現(xiàn)與調(diào)用

    這篇文章主要介紹了Spring Cloud EureKa Ribbon 服務(wù)注冊(cè)發(fā)現(xiàn)與調(diào)用,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-02-02
  • 一文探索Apache HttpClient如何設(shè)定超時(shí)時(shí)間

    一文探索Apache HttpClient如何設(shè)定超時(shí)時(shí)間

    Apache HttpClient是一個(gè)流行的Java庫(kù),用于發(fā)送HTTP請(qǐng)求,這篇文章主要為大家介紹了Apache HttpClient如何設(shè)定超時(shí)時(shí)間,感興趣的小伙伴可以學(xué)習(xí)一下
    2023-10-10
  • java接口性能優(yōu)化技巧

    java接口性能優(yōu)化技巧

    這篇文章主要為大家介紹了java接口性能優(yōu)化技巧示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • Java 詳解循環(huán)屏障CyclicBarrier如何實(shí)現(xiàn)多線(xiàn)程分段等待執(zhí)行完成

    Java 詳解循環(huán)屏障CyclicBarrier如何實(shí)現(xiàn)多線(xiàn)程分段等待執(zhí)行完成

    CyclicBarrier是一個(gè)同步工具類(lèi),可以翻譯成循環(huán)屏障,也叫障礙器或同步屏障。CyclicBarrier內(nèi)部有一個(gè)計(jì)數(shù)器count,調(diào)用障礙器的await方法會(huì)使計(jì)數(shù)器count的值減一,當(dāng)計(jì)數(shù)器count的值為0時(shí),表明調(diào)用了await方法線(xiàn)程已經(jīng)達(dá)到了設(shè)置的數(shù)量
    2021-11-11
  • 基于Java的電梯系統(tǒng)實(shí)現(xiàn)過(guò)程

    基于Java的電梯系統(tǒng)實(shí)現(xiàn)過(guò)程

    這篇文章主要介紹了基于Java的電梯系統(tǒng)實(shí)現(xiàn)過(guò)程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10
  • Java中的ReentrantLock使用解析

    Java中的ReentrantLock使用解析

    這篇文章主要介紹了Java中的ReentrantLock使用解析,ReentrandLock即可重入鎖,可重入鎖解決的是重入鎖定的問(wèn)題,重入鎖定指的是當(dāng)一個(gè)線(xiàn)程執(zhí)行邏輯時(shí),需要兩次獲取鎖,而該鎖不可重入就會(huì)導(dǎo)致內(nèi)部嵌套無(wú)法獲取鎖導(dǎo)致Reentrance Lockout發(fā)生,需要的朋友可以參考下
    2023-11-11

最新評(píng)論