Sobes.tech
Junior — Middle
100

¿Cómo configurar la selección de la base de datos principal en una aplicación con múltiples fuentes de datos en Spring Boot?

Empresas donde se preguntó
SimbirsoftSimbirsoft

Respuesta de la IA

sobes.tech AI

В Spring Boot для работы с несколькими источниками данных и выбора основной базы данных обычно делают следующее:

  1. Определяют несколько DataSource бинов с разными настройками подключения.
  2. Используют аннотации @Primary для указания основного источника данных.
  3. При необходимости создают отдельные 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 как основной, а остальные — как дополнительные.