实战代码(六):Springboot配置多数据源

一、理论基础

本示例基于dynamic-datasource,源码地址请点击此处进入GitHub

dynamic-datasource-spring-boot-starter 是一个基于springboot的快速集成多数据源的启动器。

它可以实现Springboot启动时加载多个DB配置,不管是多个mysql还是mysql、sqlite等混合使用。

关键注释
@DS("这里填写你的db配置名称")
在service的类或方法上使用,可以指定该类或方法所使用的DataSource
如果不使用此注解,表示使用默认配置

二、实战代码

2.1 依赖引入



   com.baomidou
   dynamic-datasource-spring-boot-starter
   3.2.1

2.2 配置文件

spring:
    datasource:
        dynamic:
            datasource:
                demo1:
                    driver-class-name: com.mysql.cj.jdbc.Driver
                    username: root
                    password: root
                    url: jdbc:mysql://127.0.0.1:3306/demo1?useSSL=false
                demo2:
                    driver-class-name: com.mysql.cj.jdbc.Driver
                    username: root
                    password: root
                    url: jdbc:mysql://127.0.0.1:3306/demo2?useSSL=false
            # 默认db为的demo1
            primary: demo1

2.3 示例代码

除了使用注解跟单数据源不一样,其余的地方都跟单数据源一样

@Service
@DS("demo2")
public class DicServiceImpl extends ServiceImpl implements IDicService {


    @Override
    public void test {
       System.out.print("这是一个读取demo2数据库的示例")
    }
}
@Service
public class DicServiceImpl extends ServiceImpl implements IDicService {

    @Override
    public void test {
       System.out.print("这是一个读取默认数据库配置demo2的示例")
    }
}

你可能感兴趣的:(实战代码(六):Springboot配置多数据源)