spring boot多数据源配置
时间: 2023-10-10 09:04:25 浏览: 52
在Spring Boot中配置多数据源需要以下几个步骤:
1. 在主类上添加`@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})`注解,禁用掉Spring Boot的数据源自动配置类。
2. 创建一个配置类,例如`DataSourceConfig`,使用`@Configuration`注解标记,并在该类中定义多个数据源的方法。
3. 在每个数据源的方法上使用`@Bean`注解和`@ConfigurationProperties(prefix = "spring.datasource.mysql-datasource")`注解来指定配置的前缀和数据源的名称。
4. 在每个数据源的方法内部创建并配置数据源,例如使用`DruidDataSourceBuilder.create().build()`来创建一个Druid数据库连接池,并返回该数据源。
5. 在需要使用数据源的地方,通过`@Qualifier`注解和数据源的名称来指定使用哪个数据源。
具体配置代码如下所示:
```java
@Configuration
public class DataSourceConfig {
@Bean(name = "mysqlDataSource1")
@ConfigurationProperties(prefix = "spring.datasource.mysql-datasource1")
public DataSource dataSource1(){
DruidDataSource build = DruidDataSourceBuilder.create().build();
return build;
}
@Bean(name = "mysqlDataSource2")
@ConfigurationProperties(prefix = "spring.datasource.mysql-datasource2")
public DataSource dataSource2(){
DruidDataSource build = DruidDataSourceBuilder.create().build();
return build;
}
}
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)