Spring 4 有 2 个 jdbc 连接
Spring 4 with 2 jdbc connections
如何使用 Spring4 java config 类 配置 2 jdbc 个连接?
是否应该为这两个连接配置 2 个事务管理器?
感谢
编辑:
我只想使用 JdbcTemplate 而不是 JPA,Spring 数据。
示例配置可能如下所示。我还推送了一个完整的示例到 GitHub 可以找到 here
@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());
}
}
如何使用 Spring4 java config 类 配置 2 jdbc 个连接?
是否应该为这两个连接配置 2 个事务管理器?
感谢
编辑:
我只想使用 JdbcTemplate 而不是 JPA,Spring 数据。
示例配置可能如下所示。我还推送了一个完整的示例到 GitHub 可以找到 here
@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());
}
}