【发布时间】:2019-06-29 09:38:08
【问题描述】:
我在创建准备好的语句时间歇性地看到关闭连接错误任何线索这里的问题是什么?
下面是我如何获得连接和preparestatement
ConnectionManager.getConnection();
con.preparestatement(" select * from my_table ");
以下是 HikariCP 的配置:
<bean id="hikariConfig" class="com.zaxxer.hikari.HikariConfig">
<property name="poolName" value="my-pool" />
<property name="registerMbeans" value="true" />
<property name="driverClassName" value="${my.dbDriverClassName}" />
<property name="jdbcUrl" value="${my.dbConnectionUrl}" />
<property name="username" value="${my.dbUserName}" />
<property name="password" value="${my.dbPassword}" />
<property name="connectionTestQuery" value="SELECT 1 FROM DUAL" />
<property name="maximumPoolSize" value="100" />
<property name="minimumIdle" value="10" />
<property name="leakDetectionThreshold" value="120000" />
<property name="maxLifetime" value="600000" />
<property name="idleTimeout" value="60000" />
</bean>
<bean id="dataSource" class="com.zaxxer.hikari.HikariDataSource" destroy-
method="close">
<constructor-arg ref="hikariConfig" />
</bean>
<bean
class="org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate"
c:dataSource-ref="dataSource" />
<bean id="jdbcTransactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager"
p:dataSource-ref="dataSource"/>
<tx:annotation-driven transaction-manager="jdbcTransactionManager"/>
<bean id="jdbcTemplate"
class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="dataSource"/>
</bean>
ConnectionManager 的pastebin https://pastebin.com/aqNKtwaH
【问题讨论】:
-
你能显示代码吗?是否有其他错误或泄漏警告?
-
@user7294900 是的,我看到连接泄漏错误
-
你能添加堆栈跟踪吗?
-
在 pastebin pastebin.com/UUEfayzJ 我在第 33 行看到错误
-
你的代码是如何编译的?
ResultSet = null;和Product=null;?
标签: spring oracle spring-jdbc hikaricp