Spring学习--SpringBoot应用如何配置多数据源

时间:2026-02-14 20:02:29

1、通过 Spring Initializr 创建基于SpringBoot的web应用骨架程序,添加如下依赖:(如图示)

1. Spring Web Starter

2. JDBC API

3. MySQL Driver

4. H2 Database

5. Lombok

6. Spring Boot Actuator

应用包含两个数据源,一个基于 MySQL 数据库,一个基于 H2 这个嵌入式内存形数据库。

Spring学习--SpringBoot应用如何配置多数据源

Spring学习--SpringBoot应用如何配置多数据源

2、将生成的应用骨架导入到Eclipse中,因为需要配置多数据源,所以首先进行如下操作:

1. 在 application.properties 中配置多个数据源的数据库连接信息(图1示

2. 在启动类中通过注解将SpringBoot默认的数据源相关的自动配置类删除(图2示

启动类目前添加的其他配置有 @Slf4j 注解(lombok提供,方便使用log对象)和 CommandLineRunner 接口(实现其run方法,以方便后面的测试)

Spring学习--SpringBoot应用如何配置多数据源

Spring学习--SpringBoot应用如何配置多数据源

3、通过代码实现基于MySQL数据库的第一个数据源 (相关代码请参考图示)

Spring学习--SpringBoot应用如何配置多数据源

4、通过代码实现基于H2数据库的第二个数据源 (相关代码请参考图示)

Spring学习--SpringBoot应用如何配置多数据源

5、编写测试代码(图示),代码基于两个数据源对象分别获取一个数据库连接,注意,声明的两个 DataSource 对象,需要使用 @Lazy 进行延迟注入,因为在声明 DataSource 对象处,Spring bean factory 中还没有创建相应的 bean 实例,如果此时就进行注入,会报错。

Spring学习--SpringBoot应用如何配置多数据源

6、运行测试,从控制台打印的log可以看出,两个数据源的连接均获取成功(图示)。

Spring学习--SpringBoot应用如何配置多数据源

© 2026 手抄报圈
信息来自网络 所有数据仅供参考
有疑问请联系站长 site.kefu@gmail.com