Back to questions
Simbirsoft
Junior — Middle
55
Как настроить выбор основной базы данных в приложении с несколькими источниками данных на Spring Boot?
Companies where asked
Answer from AI
sobes.tech AI
В 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 как основной, а остальные — как дополнительные.