Установка свойств пула соединений HikariCP программно в случае нескольких источников данных с пружинными данными jpa и oracle - PullRequest
0 голосов
/ 21 апреля 2020

Я создаю 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.

...