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

Springboot mybatis plus druid多數(shù)據(jù)源解決方案 dynamic-datasource的使用詳解

 更新時(shí)間:2020年11月18日 10:30:34   作者:?jiǎn)}雨凊  
這篇文章主要介紹了Springboot mybatis plus druid多數(shù)據(jù)源解決方案 dynamic-datasource的使用,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

依賴

<dependency>
 <groupId>com.baomidou</groupId>
 <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
 <version>2.5.0</version>
</dependency>
<dependency>
 <groupId>p6spy</groupId>
 <artifactId>p6spy</artifactId>
 <version>3.9.1</version>
</dependency>
<dependency>
 <groupId>com.alibaba</groupId>
 <artifactId>druid-spring-boot-starter</artifactId>
 <version>1.1.21</version>
</dependency>
<dependency>
 <groupId>com.baomidou</groupId>
 <artifactId>mybatis-plus-boot-starter</artifactId>
 <version>3.3.1.tmp</version>
</dependency>

p6spy配置文件spy.properties,有性能影響,生產(chǎn)環(huán)境建議關(guān)閉

#3.2.1以上使用
modulelist=com.baomidou.mybatisplus.extension.p6spy.MybatisPlusLogFactory
#3.2.1以下使用或者不配置
#modulelist=com.p6spy.engine.logging.P6LogFactory,com.p6spy.engine.outage.P6OutageFactory
# 自定義日志打印
logMessageFormat=com.baomidou.mybatisplus.extension.p6spy.P6SpyLogger
#日志輸出到控制臺(tái)
appender=com.baomidou.mybatisplus.extension.p6spy.StdoutLogger
# 使用日志系統(tǒng)記錄 sql
#appender=com.p6spy.engine.spy.appender.Slf4JLogger
# 設(shè)置 p6spy driver 代理
deregisterdrivers=true

# 取消JDBC URL前綴
useprefix=true
# 配置記錄 Log 例外,可去掉的結(jié)果集有error,info,batch,debug,statement,commit,rollback,result,resultset.
excludecategories=info,debug,result,commit,resultset
# 日期格式
dateformat=yyyy-MM-dd HH:mm:ss
# 實(shí)際驅(qū)動(dòng)可多個(gè)
#driverlist=org.h2.Driver
# 是否開啟慢SQL記錄
outagedetection=true
# 慢SQL記錄標(biāo)準(zhǔn) 2 秒
outagedetectioninterval=5

配置文件application.yml

server:
 port: 8080

spring:
 datasource:
 dynamic:
  p6spy: true # 默認(rèn)false,建議線上關(guān)閉。
  primary: master #設(shè)置默認(rèn)的數(shù)據(jù)源或者數(shù)據(jù)源組,默認(rèn)值即為master
  datasource:
  master:
   url: jdbc:mysql://localhost:3306/bdata?serverTimezone=GMT%2B8&characterEncoding=utf8&autoReconnect=true&rewriteBatchedStatements=true&allowMultiQueries=true
   username: root
   password: root
   driver-class-name: com.mysql.cj.jdbc.Driver
  slave:
   url: jdbc:mysql://localhost:3306/lmkstudy?serverTimezone=GMT%2B8&characterEncoding=utf8&autoReconnect=true&rewriteBatchedStatements=true&allowMultiQueries=true
   username: root
   password: root
   driver-class-name: com.mysql.cj.jdbc.Driver
   druid:
   password: root
   username: root
   # 初始化連接大小
   initial-size: 5
   #最大連接池?cái)?shù)量
   max-active: 20
   # 最小連接池?cái)?shù)量
   min-idle: 3
   # 配置獲取連接等待超時(shí)的時(shí)間 單位毫秒
   max-wait: 60000
   # 配置間隔多久才進(jìn)行一次檢測(cè),檢測(cè)需要關(guān)閉的空閑連接,單位是毫秒
   time-between-eviction-runs-millis: 60000
   # 配置一個(gè)連接在池中最小生存的時(shí)間,單位是毫秒
   min-evictable-idle-time-millis: 300000
   # 測(cè)試連接
   validation-query: select
   # 申請(qǐng)連接的時(shí)候檢測(cè),建議配置為true,不影響性能,并且保證安全性
   test-while-idle: true
   # 獲取連接時(shí)執(zhí)行檢測(cè),建議關(guān)閉,影響性能
   test-on-borrow: false
   # 歸還連接時(shí)執(zhí)行檢測(cè),建議關(guān)閉,影響性能
   test-on-return: false
   # 打開PSCache,并且指定每個(gè)連接上PSCache的大小
   pool-prepared-statements: true
   #  配置監(jiān)控統(tǒng)計(jì)攔截器 防火墻 日志配置
   #  stat監(jiān)控?cái)?shù)據(jù)庫(kù)性能
   #  wall 用于防火墻
   #  日志 slf4j logback
   #  log4j
   #  log4j2
   # 配置多個(gè)英文逗號(hào)分隔
   filters: stat,wall,slf4j

   max-pool-prepared-statement-per-connection-size: 20
   # 合并多個(gè)DruidDataSource的監(jiān)控?cái)?shù)據(jù)
   use-global-data-source-stat: true
   # 通過connectProperties屬性來打開mergeSql功能;慢SQL記錄 SQL優(yōu)化
   connect-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
   # ===========監(jiān)控配置===========
   # WebStatFilter配置,說明請(qǐng)參考Druid Wiki,配置_配置WebStatFilter
   web-stat-filter:
    #是否啟用StatFilter默認(rèn)值false
    enabled: true
    # 攔截所有的
    url-pattern: /*
    # 排除一些不必要的url,比如*:js,/jslib/*等等:
    exclusions: "*.js,*.gif,*.jpg,*.png,*.css,*.ico, /druid/*"
    # 關(guān)閉和開啟session 統(tǒng)計(jì)功能 默認(rèn)關(guān)閉
    #  session-stat-enable: true
    # sessionStatMaxCount是1000個(gè)
    #  session-stat-max-count: 1000
    # 配置principalSessionName,使得druid能夠知道當(dāng)前的session的用戶是誰
    #  principal-session-name:
    # StatViewServlet配置,說明請(qǐng)參考Druid Wiki,配置_StatViewServlet配置
   stat-view-servlet:
    # 是否啟用StatViewServlet默認(rèn)值true
    enabled: true
    url-pattern: /druid/*
    # 界面上有一個(gè)重置功能 執(zhí)行這個(gè)操作之后,會(huì)導(dǎo)致所有計(jì)數(shù)器清零,重新計(jì)數(shù) 建議false
    reset-enable: false
    # 登錄的后臺(tái)的用戶名,密碼
    login-username: admin
    login-password: admin
mybatis-plus:
 type-aliases-package: com.site.datasource.entity
 mapper-locations: classpath*:mapper/*.xml

service層添加注解@DS(“slave”),選定數(shù)據(jù)源

@DS("slave")
@Service("userService")
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {

}

啟動(dòng)類上添加@SpringBootApplication(exclude = DruidDataSourceAutoConfigure.class)

@SpringBootApplication(exclude = DruidDataSourceAutoConfigure.class)
public class ThreadApplication {

 public static void main(String[] args) {
  SpringApplication.run(ThreadApplication.class, args);
 }

}

遇到的坑:記得要去掉DruidConfig這個(gè)文件,不然會(huì)報(bào)錯(cuò)

到此這篇關(guān)于Springboot mybatis plus druid多數(shù)據(jù)源解決方案 dynamic-datasource的使用的文章就介紹到這了,更多相關(guān)Springboot mybatis plus druid多數(shù)據(jù)源內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java如何實(shí)現(xiàn)將類文件打包為jar包

    Java如何實(shí)現(xiàn)將類文件打包為jar包

    這篇文章主要介紹了Java如何實(shí)現(xiàn)將類文件打包為jar包,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Java線程池實(shí)現(xiàn)原理詳解

    Java線程池實(shí)現(xiàn)原理詳解

    在面向?qū)ο缶幊讨?,?chuàng)建和銷毀對(duì)象是很費(fèi)時(shí)間的,因?yàn)閯?chuàng)建一個(gè)對(duì)象要獲取內(nèi)存資源或者其它更多資源,在Java中更是如此,虛擬機(jī)將試圖跟蹤每一個(gè)對(duì)象,以便能夠在對(duì)象銷毀后進(jìn)行垃圾回收,本文將對(duì)Java線程池實(shí)現(xiàn)原理進(jìn)行詳細(xì)介紹,需要的朋友可以參考下
    2023-07-07
  • Java中char[]輸出不是內(nèi)存地址的原因詳解

    Java中char[]輸出不是內(nèi)存地址的原因詳解

    這篇文章主要介紹了關(guān)于Java中char[]輸出為什么不是內(nèi)存地址的原因,文中通過示例代碼介紹的很詳細(xì),需要的朋友們可以參考學(xué)習(xí)。
    2017-03-03
  • java中實(shí)現(xiàn)對(duì)象排序的兩種方法(Comparable,Comparator)

    java中實(shí)現(xiàn)對(duì)象排序的兩種方法(Comparable,Comparator)

    這篇文章主要給大家介紹了關(guān)于java中實(shí)現(xiàn)對(duì)象排序的兩種方法,一種是實(shí)現(xiàn)Comparable進(jìn)行排序,另一種是實(shí)現(xiàn)Comparator進(jìn)行排序,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-12-12
  • Spring aop+反射實(shí)現(xiàn)電話號(hào)加密

    Spring aop+反射實(shí)現(xiàn)電話號(hào)加密

    線上項(xiàng)目涉及大量查詢接口中,存在電話號(hào)明文展示不合規(guī)的問題。如果對(duì)每個(gè)接口返回結(jié)果中電話號(hào)相關(guān)字段修改相關(guān)代碼邏輯,則工作量較大花費(fèi)時(shí)間多。因此設(shè)計(jì)電話號(hào)加密注解,減少工作量。
    2021-06-06
  • Maven分模塊開發(fā)執(zhí)行指令失敗的問題

    Maven分模塊開發(fā)執(zhí)行指令失敗的問題

    Maven分模塊開發(fā),行指令失敗,modules.module[3]‘ specifies duplicate child module maven_dao @ line 29, column 1的問題,本文給大家分享解決方法,感興趣的朋友跟隨小編一起看看吧
    2020-09-09
  • Eureka源碼閱讀Client啟動(dòng)入口注冊(cè)續(xù)約及定時(shí)任務(wù)

    Eureka源碼閱讀Client啟動(dòng)入口注冊(cè)續(xù)約及定時(shí)任務(wù)

    這篇文章主要為大家介紹了Eureka源碼閱讀Client啟動(dòng)入口注冊(cè)續(xù)約及定時(shí)任務(wù)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-10-10
  • mybatis教程之動(dòng)態(tài)sql語句_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    mybatis教程之動(dòng)態(tài)sql語句_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    這篇文章主要介紹了mybatis教程之動(dòng)態(tài)sql語句,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-09-09
  • springcloud+nacos實(shí)現(xiàn)灰度發(fā)布示例詳解

    springcloud+nacos實(shí)現(xiàn)灰度發(fā)布示例詳解

    這篇文章主要介紹了springcloud+nacos實(shí)現(xiàn)灰度發(fā)布,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-08-08
  • logback標(biāo)記日志過濾器MarkerFilter源碼解讀

    logback標(biāo)記日志過濾器MarkerFilter源碼解讀

    這篇文章主要為大家介紹了logback標(biāo)記日志過濾器MarkerFilter源碼解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-11-11

最新評(píng)論

昆明市| 宜宾县| 永修县| 沐川县| 苗栗市| 清原| 青川县| 琼海市| 诸城市| 辽阳县| 泽州县| 雷波县| 乐陵市| 凉城县| 德阳市| 宜兴市| 临沧市| 崇义县| 青铜峡市| 巫山县| 仙游县| 红河县| 凌海市| 青海省| 都江堰市| 宣城市| 建水县| 辛集市| 怀宁县| 贵州省| 屏东市| 溧阳市| 盈江县| 凤山县| 拉萨市| 榆中县| 邳州市| 安远县| 陇川县| 京山县| 龙州县|