# TestDynamicDatasource
**Repository Path**: mika-7/TestDynamicDatasource
## Basic Information
- **Project Name**: TestDynamicDatasource
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2023-11-30
- **Last Updated**: 2023-12-14
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# TestDynamicDatasource
#### 介绍
多数据源配置,动态切换数据源,可同时操作两个数据库。目前有两个数据源,一个是 MySQL 数据库,另外一个是 SQL Server 数据库。
##### 使用
###### 导入依赖
`pom.xml` 文件中,必须的依赖说明:
- dynamic-datasource-spring-boot-starter 是 Mybatis-Plus 的动态数据源
- mssql-jdbc 是 sql-server 驱动
- mysql-connector-j 是 mysql 驱动
```pom
com.baomidou
dynamic-datasource-spring-boot-starter
3.1.1
com.microsoft.sqlserver
mssql-jdbc
runtime
com.mysql
mysql-connector-j
runtime
```
配置 `application-dev.yml` 文件的配置项
```yml
spring:
datasource:
dynamic:
datasource:
# MySQL
mysql:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/jpa
username: root
password: root
# SQL-Server
sqlserver:
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
url: jdbc:sqlserver://localhost:1433;Database=TEST
username: sa
password: root
# 严格模式
strict: false
# 主数据源
primary: mysql
```
###### 注解
注解 @DS 用于指定数据库,可以放在类或方法上,使用时,其中传值为数据库名。如:@DS("databaseName"),下面是一个例子,在 ClientRegMapper.java 中编写
```java
@Mapper
@DS("sqlserver")
// 本地 sqlserver 数据库
public interface ClientRegMapper {
@Select("SELECT * FROM dbo.ClientReg")
List