Spring+mybatisplus 多数据源

Spring+mybatisplus 多数据源

💡 原文中文,约1300字,阅读约需4分钟。
📝

内容提要

本文介绍了如何在sql server中切换数据源。需要添加相应的驱动依赖,并在配置文件中设置数据源信息。代码中使用@DS注解声明使用的数据源。默认主库为db1,不需要声明操作db1的接口。

🔎

延伸解读

依赖配置的关键点

文章明确列出了三个必需依赖:mybatis-plus-boot-starter、dynamic-datasource-spring-boot-starter 和 mssql-jdbc。其中 mybatis-plus-boot-starter 排除了 jsqlparser,这可能是为了避免版本冲突。dynamic-datasource-spring-boot-starter 是实现多数据源动态切换的核心组件,版本为 4.3.0。读者在配置时需注意依赖的 groupId 和 artifactId 必须准确,否则无法生效

数据源配置与默认主库

在 application.yml 中,通过 spring.datasource.dynamic 节点配置多数据源。primary 指定默认主库为 db1,datasource 下分别定义 db1 和 db2 的连接信息。文章强调,操作 db1 的接口无需使用 @DS 注解,因为它是默认数据源。这种设计简化了主库操作的代码,但要求开发者清楚哪个是主库,避免误用。

@DS 注解的使用方式

文章指出,在 Mapper 或 DAO 接口上使用 @DS 注解即可声明该接口使用的数据源。示例中 BehaviorEmailDao 通过 @DS("db2") 指定操作 db2。这意味着数据源切换是在接口级别生效的,而非方法级别。读者需注意,如果同一个接口中需要操作不同数据源,可能需要拆分接口或采用其他方式。

❓

Q&A

如何在SQL Server中切换数据源?

在SQL Server中切换数据源需要添加相应的驱动依赖,并在配置文件中设置数据源信息。

使用MyBatis-Plus时如何声明数据源?

在代码中使用@DS注解声明使用的数据源。

默认主库是什么?

默认主库为db1,因此操作db1的接口可不用声明。

需要添加哪些依赖来支持多数据源?

需要添加mybatis-plus-boot-starter、dynamic-datasource-spring-boot-starter和mssql-jdbc等依赖。

如何配置数据源信息?

在配置文件中设置spring.datasource.dynamic.primary和datasource的相关信息。

在Mapper或DAO文件中如何使用@DS注解?

在Mapper或DAO文件上使用@DS注解来声明使用的具体数据源。

🏷️

标签

➡️

继续阅读