官方文档: dynamic-datasource-spring-boot-starter

一、依赖导入

  • springboot 2.4.7
  • druid-spring-boot-starter 1.2.6
  • dynamic-datasource-spring-boot-starter 3.4.0
            <dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.2.6</version></dependency><dependency><groupId>com.baomidou</groupId><artifactId>dynamic-datasource-spring-boot-starter</artifactId><version>3.4.0</version></dependency>

二、编写配置文件

# 数据源配置
spring:autoconfigure:# 排除 Druid 自动配置exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfiguredatasource:# 指定使用 Druid 数据源type: com.alibaba.druid.pool.DruidDataSource# 动态数据源文档 https://www.kancloud.cn/tracy5546/dynamic-datasource/contentdynamic:#设置默认的数据源或者数据源组,默认值即为 masterprimary: masterdatasource:# 主库数据源master:driverClassName: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://192.168.0.121:3306/test1?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=trueusername: rootpassword: root# 从库数据源slave:driverClassName: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://192.168.0.122:3306/test2?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=trueusername: rootpassword: rootdruid:# 初始连接数initialSize: 5# 最小连接池数量minIdle: 10# 最大连接池数量maxActive: 20# 配置获取连接等待超时的时间maxWait: 60000# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒timeBetweenEvictionRunsMillis: 60000# 配置一个连接在池中最小生存的时间,单位是毫秒minEvictableIdleTimeMillis: 300000# 配置一个连接在池中最大生存的时间,单位是毫秒maxEvictableIdleTimeMillis: 900000# 配置检测连接是否有效validationQuery: SELECT 1 FROM DUAL

三、测试

进入 Druid 控制台


可以查看每个数据源的配置信息

数据测试

在接口增加注解 切换为从库数据源 (从库无数据 主库有数据)

不使用注解查询

使用注解查询

测试成功 总体集成很简单

SpringBoot 2.X 整合 druid + dynamic-datasource 多数据源方案相关推荐

  1. mybatis mysql merge_Spring Boot + Mybatis 整合Mysql ,SQLServer数据源以及整合druid,动态调整数据源切换。...

    pom.xml依赖 org.springframework.boot spring-boot-starter-web org.mybatis.spring.boot mybatis-spring-bo ...

  2. SpringBoot一站式功能提供框架(一)整合MybatisPlus、整合Swagger Knif4j、整合Druid多数据源--柚子真好吃

    SpringBoot一站式功能提供框架(一)整合MybatisPlus.整合Swagger Knif4j.整合Druid多数据源--柚子真好吃 一.前言 二.功能描述 三.具体实现 四.开源地址 一. ...

  3. SpringBoot整合JDBC、整合Druid数据源详解教程

    目录 一.整合JDBC 1. 环境准备 1. 创建数据库 2. 创建SpringBoot项目 3. IDEA连接数据库 2. 编写数据库配置信息 3. 编写测试类测试 4. CRUD操作数据库 1. ...

  4. spring-boot整合druid配置

    准备:druid是阿里巴巴开源的高性能,多功能的连接池,其主要配置参数如下: 配置 缺省值 说明 name   配置这个属性的意义在于,如果存在多个数据源,监控的时候可以通过名字来区分开来.如果没有配 ...

  5. SpringBoot整合Druid ---- 猿来如此容易

    SpringBoot整合Druid 原来这么容易 idea创建springboot项目 选择相关依赖 导入相关依赖 <!--日志文件--><dependencies><d ...

  6. SpringBoot整合Mybatis3 Dynamic Sql(IDEA)

    SpringBoot整合Mybatis3 Dynamic Sql(IDEA) Mybatis Dynamic Sql与以前TargetRuntime相比较: 移除了XXXExamle类和xml文件,代 ...

  7. SpringBoot整合Druid连接池

    SpringBoot整合Druid连接池 前言 第一种整合方式 自定义的方式 引入Druid依赖 配置文件 配置类 实现监控功能 开启SQL防火墙 实现web应用 访问Druid页面需登录 第二种整合 ...

  8. springboot系列学习(十九):springboot项目整合Druid,Druid到底是什么,他是在项目中如何使用的

    目录 Druid是什么 先看一下之前的整合的jdbc使用的数据源是什么 创建一个springboot项目,导入Druid依赖 写一个Druid的配置类 yml文件和配置类绑定,这个之前就写过 解释以上 ...

  9. SpringBoot整合Druid,开启druid监控平台

    SpringBoot整合Druid 1.导入依赖pom.xml <!-- https://mvnrepository.com/artifact/log4j/log4j --><dep ...

  10. SpringBoot整合Druid数据源页面访问报该页面无法正常运作

    SpringBoot整合Druid数据源页面访问报该页面无法正常运作 异常页面:请求访问页面成功但是该网页无法正常运行 正常的页面: 输入:账号admin 密码:123456 进入 我的代码 pom. ...

最新文章

  1. 解决ThinkPHP Call to a member function assign() on a non-object
  2. 《黑客与画家》读后感:你对技术一无所知(一些金句)
  3. 英伟达再发边缘AI计算设备:仅信用卡大小,性能比TX2强15倍
  4. HDU 1711 -Number Sequence(KMP)
  5. c语言药房系统书写指导书,C语言药房管理系统[文书借鉴]
  6. Docker Registry本地私有仓库搭建
  7. Ubuntu服务器安装snmpd(用于监控宝)
  8. 计算机主机中网卡的作用,计算机硬件组成及作用
  9. 机器学习(周志华) 第八章集成学习
  10. 用matlab画相频曲线_matlab 幅频特性 相频特性代码,图片
  11. (matlab代码)绘制地震记录的F-K谱
  12. Excel VBA VBA去重复的几种方法
  13. <a>标签下载excel文件
  14. linux网络设备驱动(一)
  15. 目前住院病人主要由护士护理,这样做不仅需要大量护士,而且由于不能随时观察危重病人的病情变化,还可能会延误抢救时机。某医院打算开发一个以计算机为中心的监护系统,试写出问题定义并且分析开发这个系统的可行性
  16. 动漫人物手绘线稿图,非常适合初学者临摹
  17. linux 无线网卡 免驱动,Linux系统下安装USB无线网卡驱动方法
  18. 读《我不喜欢这世界,我只喜欢你》有感
  19. 一本通1179:奖学金
  20. jQuery mobile插件基础知识笔记

热门文章

  1. linux退出热键_linux用户退出登录的命令介绍
  2. cmd贪吃蛇(cmd贪吃蛇怎么做)
  3. 金融学习之八——ARCH和GARCH模型应用
  4. matlab坐标加图例,科学网—Matlab 循环添加图例 更改图例位置 - 肖鑫的博文
  5. mysql临时数据库_MySQL临时目录 - mysql数据库栏目 - 自学php
  6. 【JAVA面试题-阿辉】try catch finally , try 里有 return , finally 还执行么?
  7. git因commit的记录太大导致push失败解决方法
  8. koa-body koa2 使用 koa-body 代替 koa-bodyparser 和 koa-multer
  9. flask文件上传 flask-uploads
  10. sqlite读写锁和线程模式