Пружина 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());
}
}