在Spring中,可以使用多个数据源来连接多个数据库。下面是一些步骤:
-
在
application.properties
或application.yml
文件中配置多个数据源的连接信息。例如,可以为每个数据源定义不同的datasource.url
、datasource.username
和datasource.password
等属性。 -
创建多个数据源的配置类。可以创建多个
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.properties
或application.yml
文件中读取以prefix
开头的属性值,并自动装配到对应的bean中。
- 在
@Mapper
注解的接口中使用@Qualifier
注解指定使用哪个数据源。例如:
@Mapper public interface UserMapper { @Qualifier("dataSource1") @Select("SELECT * FROM user") ListgetUsersFromDataSource1(); @Qualifier("dataSource2") @Select("SELECT * FROM user") List getUsersFromDataSource2(); }
- 在
@Service
注解的服务类中注入UserMapper
接口,并调用相应的方法即可。
@Service public class UserService { @Autowired private UserMapper userMapper; public ListgetUsersFromDataSource1() { return userMapper.getUsersFromDataSource1(); } public List getUsersFromDataSource2() { return userMapper.getUsersFromDataSource2(); } }
这样,就可以通过不同的数据源连接和操作多个数据库了。