Bootstrap

以Springboot为例,如何连接多个数据库(源)

在Spring Boot中连接多个数据库,可以通过配置多个数据源来实现。可以在配置文件中定义多个数据源的配置,每个数据源有一个唯一的名称和对应的数据源属性。然后,通过在需要访问特定数据源的地方,使用对应的数据源名称来访问该数据源。

具体步骤如下

1、在配置文件中,定义多个数据源的配置,每个数据源都有一个唯一的名称和对应的数据源属性,如下所示:

spring.datasource.primary.url=jdbc:mysql://localhost:3306/db1
spring.datasource.primary.username=root
spring.datasource.primary.password=123456
spring.datasource.primary.driver-class-name=com.mysql.jdbc.Driver

spring.datasource.secondary.url=jdbc:mysql://localhost:3306/db2
spring.datasource.secondary.username=root
spring.datasource.secondary.password=123456
spring.datasource.secondary.driver-class-name=com.mysql.jdbc.Driver

2、在代码中,使用@Configuration注解定义多个数据源的DataSource对象,并使用@Qualifier注解指定数据源的名称,如下所示:

@Configuration
public class DataSourceConfig {
    @Primary
    @Bean(name = "primaryDataSource")
    @ConfigurationProperties(prefix = "spring.datasource.primary")
    public DataSource primaryDataSource() {
        return DataSourceBuilder.create().build();
    }

    @Bean(name = "secondaryDataSource")
    @ConfigurationProperties(prefix = "spring.datasource.secondary")
    public DataSource secondaryDataSource() {
        return DataSourceBuilder.create().build();
    }
}

3、在代码中,使用@Qualifier注解指定要使用的数据源的名称,如下所示:

@Service
public class UserServiceImpl implements UserService {
    @Autowired
    @Qualifier("primaryDataSource")
    private DataSource primaryDataSource;

    @Autowired
    @Qualifier("secondaryDataSource")
    private DataSource secondaryDataSource;

    //...
}

以上就是连接多个数据库的详细步骤,使用的时候只需要使用不同数据源就可以。

;