第三方oracle数据库每次重启后,我方应用服务器连接会出现超时现象,每次都需要重启应用服务器才能正常连接是怎么一回事?
引用
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.10</version>
</dependency>
public static DataSourceBean createDataSourceBean(String driver, String url, String username, String password){
DataSourceBean bean = new DataSourceBean();
DruidDataSource druidDataSource = new DruidDataSource();
druidDataSource.setDriverClassName(driver);
druidDataSource.setUrl(url);
druidDataSource.setUsername(username);
druidDataSource.setPassword(password);
druidDataSource.setInitialSize(10);
druidDataSource.setMinIdle(5);
druidDataSource.setMaxActive(40);
druidDataSource.setBreakAfterAcquireFailure(true);
druidDataSource.setFailFast(true);
druidDataSource.setConnectionErrorRetryAttempts(3);
if(ORACLE_DRIVER.equals(driver)){
druidDataSource.setValidationQuery("select 1 from dual");
}else {
druidDataSource.setValidationQuery("select 1 ");
}
bean.setDataSource(druidDataSource);
JdbcTemplate jdbcTemplate = new JdbcTemplate();
jdbcTemplate.setDataSource(druidDataSource);
bean.setJdbcTemplate(jdbcTemplate);
TransactionTemplate transactionTemplate = new TransactionTemplate();
transactionTemplate.setTransactionManager(new DataSourceTransactionManager(druidDataSource));
bean.setTransactionTemplate(transactionTemplate);
return bean;
}