Springboot 2.x下多数据源配置

Posted 二刀

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Springboot 2.x下多数据源配置相关的知识,希望对你有一定的参考价值。

本文同样适用于2.x版本下Mybatis的多数据源配置

项目中经常会遇到一个项目需要访问多个数据源的情况,多数情况下可以参考这个教程进行配置。

不过该教程适合springboot1.x版本,由于2.x版本修改默认连接池为Hikari,所以该教程中的配置需要进行一些修改才可适用于2.x。

主要不同之处在于DataSource的初始化。

所以可在每个数据源的config中,重新定义DataSource-Bean的初始化方式。

@Bean
@Primary
@ConfigurationProperties("db1.datasource")
public DataSourceProperties firstDataSourceProperties() {
    return new DataSourceProperties();
}

@Primary
@Bean(name = "customerDataSource")
@ConfigurationProperties(prefix = "db1.datasource.configuration")
public HikariDataSource customerDataSource() {
    return firstDataSourceProperties().initializeDataSourceBuilder()
           .type(HikariDataSource.class).build();
}

其他配置参照教程即可。

github地址:springboot2-jpa-hikari-multi-databases

以上是关于Springboot 2.x下多数据源配置的主要内容,如果未能解决你的问题,请参考以下文章

关于SpringBoot 1.x和2.x版本差别

springboot 2.x RestTemplate配置config

SpringBoot 2.X集成 jdbc自动配置原理探究

Spring Boot 2.X 实战教程构建代码

springboot整合mybatis+oracle

SpringBoot 2.x 系列:配置