租用问题

质量为本、客户为根、勇于拼搏、务实创新

< 返回租用问题列表

spring如何连接多个数据库,spring怎么配置多个数据源

发布时间:2023-10-19 21:32:00

spring如何连接多个数据库

在Spring中,可使用多个数据源来连接多个数据库。下面是一些步骤:

  1. application.propertiesapplication.yml文件中配置多个数据源的连接信息。例如,可以为每一个数据源定义区分的datasource.urldatasource.usernamedatasource.password等属性。
  2. 创建多个数据源的配置类。可以创建多个DataSource的bean,每一个bean对应一个数据源。可使用@Configuration注解来标记该类。
@Configuration
public class DataSourceConfig {
@Bean
@ConfigurationProperties(prefix = "datasource1")
public DataSource dataSource1() {
return DataSourceBuilder.create().build();
}
@Bean
@ConfigurationProperties(prefix = "datasource2")
public DataSource dataSource2() {
return DataSourceBuilder.create().build();
}
}

注意:@ConfigurationProperties注解可以从application.propertiesapplication.yml文件中读取以prefix开头的属性值,并自动装配到对应的bean中。

  1. @Mapper注解的接口中使用@Qualifier注解指定使用哪一个数据源。例如:
@Mapper
public interface UserMapper {
@Qualifier("dataSource1")
@Select("SELECT * FROM user")
List getUsersFromDataSource1();
@Qualifier("dataSource2")
@Select("SELECT * FROM user")
List getUsersFromDataSource2();
}
  1. @Service注解的服务类中注入UserMapper接口,并调用相应的方法便可。
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
public List getUsersFromDataSource1() {
return userMapper.getUsersFromDataSource1();
}
public List getUsersFromDataSource2() {
return userMapper.getUsersFromDataSource2();
}
}

这样,就能够通过区分的数据源连接和操作多个数据库了。