Junior — Middle
Como configurar a seleção da base de dados principal numa aplicação com múltiplas fontes de dados no Spring Boot?
sobes.tech IA
Resposta da IA
В Spring Boot для работы с несколькими источниками данных и выбора основной базы данных обычно делают следующее:
- Определяют несколько
DataSourceбинов с разными настройками подключения. - Используют аннотации
@Primaryдля указания основного источника данных. - При необходимости создают отдельные
EntityManagerFactoryиTransactionManagerдля каждого источника.
Пример конфигурации с двумя источниками данных, где один помечен как основной:
@Configuration
public class DataSourceConfig {
@Bean
@Primary
@ConfigurationProperties(prefix = "spring.datasource.primary")
public DataSource primaryDataSource() {
return DataSourceBuilder.create().build();
}
@Bean
@ConfigurationProperties(prefix = "spring.datasource.secondary")
public DataSource secondaryDataSource() {
return DataSourceBuilder.create().build();
}
// Можно добавить EntityManagerFactory и TransactionManager для каждого DataSource
}
В application.properties или application.yml указываются параметры подключения для каждого источника с разными префиксами.
Таким образом, Spring Boot будет использовать primaryDataSource как основной, а остальные — как дополнительные.