1.配置多数据源

  1. pom文件

    1. <dependency>
      <groupId>com.baomidou</groupId>
      <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
      <version>2.5.6</version>
      </dependency>
  2. yaml文件(一定对齐)  
    1. 第一种

      spring:
      datasource:
      dynamic:
      primary: db1
      datasource:
      db1:
      username: root
      password: root
      url: jdbc:mysql://127.0.0.1:3306/db1
      driver-class-name: com.mysql.jdbc.Driver
      type: com.alibaba.druid.pool.DruidDataSource
      db2:
      username: root2
      password: root2
      url: jdbc:mysql://127.0.0.1:3306/db2
      driver-class-name: com.mysql.jdbc.Driver
      type: com.alibaba.druid.pool.DruidDataSource
    2. 第二种 
      spring:
      datasource:
      dynamic:
      datasource:
      master_db1:
      username: root
      password: root
      url: jdbc:mysql://127.0.0.1:3306/db1
      driver-class-name: com.mysql.jdbc.Driver
      type: com.alibaba.druid.pool.DruidDataSource
      db2:
      username: root2
      password: root2
      url: jdbc:mysql://127.0.0.1:3306/db2
      driver-class-name: com.mysql.jdbc.Driver
      type: com.alibaba.druid.pool.DruidDataSource
      druid:
      initial-size: 20
      minIdle: 50 #最小连接池数量
      xxxxxxxxx 

2.设置默认数据源

  配置中的  primary: db1  , 即是指定默认使用的数据库

 spring:
datasource:
dynamic:
primary: db1

3.使用注解切换数据源

  1. 类上

    @DS("db2")
    public class xxx(){}
  2. 方法上
    @DS("db2")
    public void xxx(){}
  3.  mapper方法上
    @Select("SELECT SFZH,USER_NAME,SEX FROM T_USER_INFO WHERE A = #{A}")
    @DS("db2")
    Map<String, Object> queryView(@Param("A") String A);

4.其他配置 , 启动

修改Application注解
@SpringBootApplication(exclude = DruidDataSourceAutoConfigure.class)

SpringBoot多数据源yaml配置的更多相关文章

  1. SpringBoot系列之YAML配置用法

    1.全局配置 SpringBoot的全局配置文件有两种: application.properties application.yml 配置文件的作用:修改SpringBoot自动配置的默认值,主要是 ...

  2. springboot多数据源的配置与使用

    转自:https://www.jianshu.com/p/34730e595a8c 之前在介绍使用JdbcTemplate和Spring-data-jpa时,都使用了单数据源.在单数据源的情况下,Sp ...

  3. springboot连接数据源,配置数据库

    Spring官方DriverManagerDataSource的配置 修改yml #配置数据源的属性 spring: datasource: driver-class-name: com.mysql. ...

  4. SpringBoot数据源相关配置

    数据源配置 单数据源 配置步骤 引入依赖:H2数据库驱动.JDBC依赖.acturator(运维).web模块(用于测试).lambok(使用@Slf4j打印日志). 直接配置所需的Bean,注入容器 ...

  5. SpringBoot系列七:SpringBoot 整合 MyBatis(配置 druid 数据源、配置 MyBatis、事务控制、druid 监控)

    1.概念:SpringBoot 整合 MyBatis 2.背景 SpringBoot 得到最终效果是一个简化到极致的 WEB 开发,但是只要牵扯到 WEB 开发,就绝对不可能缺少数据层操作,所有的开发 ...

  6. Springboot spring data jpa 多数据源的配置01

    Springboot spring data jpa 多数据源的配置 (说明:这只是引入了多个数据源,他们各自管理各自的事务,并没有实现统一的事务控制) 例: user数据库   global 数据库 ...

  7. 接管SpringBoot对Activiti的数据源自动配置

    SpringBoot的自动配置真的让人又爱又恨,但还是爱更多一点. SpringBoot想要帮我们自动配置好一切,但是有时候配置的却并不是我们需要的,甚至有时候会默默的坑我们. 我的项目是一个多数据源 ...

  8. Spring-Boot 多数据源配置+动态数据源切换+多数据源事物配置实现主从数据库存储分离

    一.基础介绍 多数据源字面意思,比如说二个数据库,甚至不同类型的数据库.在用SpringBoot开发项目时,随着业务量的扩大,我们通常会进行数据库拆分或是引入其他数据库,从而我们需要配置多个数据源. ...

  9. Springboot 多数据源配置,结合tk-mybatis

    一.前言 作为一个资深的CRUD工程师,我们在实际使用springboot开发项目的时候,难免会遇到同时使用多个数据库的情况,比如前脚刚查询mysql,后脚就要查询sqlserver. 这时,我们很直 ...

  10. SpringBoot配置文件 application.properties,yaml配置

    SpringBoot配置文件 application.properties,yaml配置 1.Spring Boot 的配置文件 application.properties 1.1 位置问题 1.2 ...

随机推荐

  1. 重试机制的实现(Guava Retry)

    重试机制的实现 重试作用: 对于重试是有场景限制的,参数校验不合法.写操作等(要考虑写是否幂等)都不适合重试. 远程调用超时.网络突然中断可以重试.外部 RPC 调用,或者数据入库等操作,如果一次操作 ...

  2. 【Python】容器:列表(list)/字典(dict)/元组(tuple)/集合(set)

    三.Python容器:列表(list)/字典(dict)/元组(tuple)/集合(set) 1.列表(list) 1.1 什么是列表 是一个'大容器',可以存储N多个元素简单来说就是其他语言中的数组 ...

  3. php 滑动图片验证生成

    1.话不多说,直接干货,喜欢的希望大家一键三连 <?php namespace App\Model; class VerifyImage { //浮层坐标数组 protected $tailor ...

  4. SQL Server 机器学习服务-概述与实战(转)

    原帖地址:https://d-bi.gitee.io/sqlserver-ml-services/ 新年第一篇,去旧迎新.本文内容,既旧也新.旧之处在于,SQL Server 机器学习服务是微软在SQ ...

  5. mybatis原理探究

    jdbc数据库运行流程: JDBC有哪三种statement接口: Statement 1.Statement接口提供了执行语句和获取结果的基本方法: 2.Statement继承自Wrapper:3. ...

  6. PNAS:微生物组分析揭示人类皮肤的独特性

    https://blog.csdn.net/woodcorpse/article/details/87989663

  7. 解决Vue.js devtools插件成功装上,却在控制台中找不到的问题

    参考:https://blog.csdn.net/CCCCt1/article/details/97668483

  8. 什么是bootstrap?

    In computing, the term bootstrap means to boot or to load a program into a computer using a much sma ...

  9. HttpClient psot和get请求

    private String backAllUserInfo(String uid) throws IOException { //this.setInterfaceurl("/idm/js ...

  10. TS语法中interface和class的理解

    在TS中interface和后端语言如c#中的概念是不一样的,在TS中interface相当于定义了一种类型,是设置自定义类型的方式,区分与基础类型(number.string等),当定义变量时,就可 ...