1、在pom文件中添加依赖
注意:
- 本文采用的 SpringBoot版本为:2.6.15
- JDK:1.8
- MySQL:8.0
首先引入依赖:
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>dynamic-datasource-spring-boot-starter</artifactId>
<version>4.3.1</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.7</version>
</dependency>
`dynamic-datasource-spring-boot-starter` 是一个用于 Spring Boot 项目的数据源动态切换库,可以在运行时动态切换数据源,非常适合多数据源场景。
以下是使用 `dynamic-datasource-spring-boot-starter` 的基本步骤:
2、配置数据源
在application.yml中配置数据源信息:
spring:
datasource:
dynamic:
primary: dataSource1 # 默认数据源
datasource:
dataSource1: #数据源1
url: jdbc:mysql://localhost:3306/db1
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
dataSource2: #数据源2
url: jdbc:mysql://localhost:3306/db2
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
3、使用`@DS`注解
在你的Service层方法上使用 `@DS` 注解来标记需要使用特定数据源。
import com.baomidou.dynamic.datasource.annotation.DS;
import org.springframework.stereotype.Service;
@Service
public class CourseInfoService {
@DS("dataSource1") // 使用默认数据源
public CourseInfoDTO getCourseInfoById(Long id) {
// ...
}
@DS("dataSource2") //使用第二个数据源
public List<CourseInfoDTO> getAllCourseInfo() {
// ...
}
}