java.sql.SQLException: Io exception: Connection reset
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:111)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:145)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:254)
at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:987)
at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1061)
at oracle.jdbc.driver.T4CPreparedStatement.executeMaybeDescribe(T4CPreparedStatement.java:849)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1133)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3338)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3383)
at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeQuery(NewProxyPreparedStatement.java:353)
解决办法(连接池根据数据库进行配置):
数据库validationQuery
Oracle
select 1 from dual
MySQL
select 1
Microsoft SQL Server
select 1
DB2
select 1 from sysibm.sysdummy1
SQLite
select 1
HSQLDB
select 1 from INFORMATION_SCHEMA.SYSTEM_USERS
postgresql
select version()
ingres
select 1
Apache Derby
select 1
H2
select 1
Informix
select count(*) from systables
例:
1. Oracle数据库, C3P0连接池
2. c3p0的版本与项目环境的存在差异,不要随便升级c3p0的版本,诺升级相应底层的配置获取也需要调整;
C3P0
C3P0