Пружина 4 с 2 соединениями JDBC

Как настроить 2 соединения jdbc с помощью классов конфигурации Spring4 java?

Должны ли быть настроены 2 менеджера транзакций для этих двух соединений?

Спасибо

Редактировать:

Я хочу использовать только JdbcTemplate без JPA, Spring Data.

1 ответ

Решение

Пример конфигурации может выглядеть примерно так: Я также отправил полный образец на GitHub, который можно найти здесь

@Configuration
public class DataSourceConfiguration {

    @Bean
    public PlatformTransactionManager firstDataSourceTransactionManager() {
        return new DataSourceTransactionManager(firstDataSource());
    }

    @Bean(destroyMethod = "shutdown")
    @Primary
    public DataSource firstDataSource() {
        return new EmbeddedDatabaseBuilder()
                .setType(EmbeddedDatabaseType.H2)
                .generateUniqueName(true)
                .build();
    }

    @Bean
    public JdbcTemplate firstJdbcTemplate() {
        return new JdbcTemplate(firstDataSource());
    }

    @Bean
    public PlatformTransactionManager secondDataSourceTransactionManager() {
        return new DataSourceTransactionManager(secondDataSource());
    }

    @Bean(destroyMethod = "shutdown")
    public DataSource secondDataSource() {
        return new EmbeddedDatabaseBuilder()
                .setType(EmbeddedDatabaseType.H2)
                .generateUniqueName(true)
                .build();
    }

    @Bean
    public JdbcTemplate secondJdbcTemplate() {
        return new JdbcTemplate(secondDataSource());
    }

}
Другие вопросы по тегам