Я создаю javax.sql.DataSource
, как показано ниже:
@Primary
@Bean
@ConfigurationProperties("spring.datasource")
public DataSource commonDataSource() {
String url = <url>;
String user = <user>;
String driverClass = "oracle.jdbc.driver.OracleDriver";
return DataSourceBuilder.create().url(url).username(user).password(<pwd>).driverClassName(driverClass).build();
//return DataSourceBuilder.create().build();
}
@Primary
@Bean(name = "commonEntityManagerFactory")
public LocalContainerEntityManagerFactoryBean commonEntityManagerFactory(EntityManagerFactoryBuilder builder) {
Properties jpaProperties = new Properties();
jpaProperties.put("hibernate.dialect", "org.hibernate.dialect.Oracle10gDialect");
jpaProperties.put("hibernate.connection.autocommit", false);
LocalContainerEntityManagerFactoryBean entityManagerFactory = builder.dataSource(commonDataSource())
.packages("com.data.model.common").build();
entityManagerFactory.setJpaProperties(jpaProperties);
entityManagerFactory.afterPropertiesSet();
return entityManagerFactory;
}
@Primary
@Bean
public PlatformTransactionManager commonTransactionManager(final @Qualifier("commonEntityManagerFactory") LocalContainerEntityManagerFactoryBean commonEntityManagerFactory) {
return new JpaTransactionManager(commonEntityManagerFactory.getObject());
}
Может кто-нибудь подсказать, как настроить свойства пула соединений здесь. Я хочу использовать HikariCP. Я не использую следующие свойства в application.propertires
#HikariCP settings
spring.datasource.hikari.connection-timeout=60000
spring.datasource.hikari.maximum-pool-size=15
spring.datasource.hikari.minimum-idle=1
, так как я создаю несколько источников данных. Итак, я хочу установить связанные свойства пула соединений программно при создании экземпляра DataSource.