我正在制作一个石英线程应用程序,该应用程序从表中收集数据,并在插入更新数据库后将其插入另一个表
但是当我得到上面的错误时,我得到了一些数据在表
注意:
1.
2.**OJDBC6.jar连接**
3.所有表都在同一个模式
:
java.sql.SQLException: Connection is closed.
at org.apache.commons.dbcp.PoolingDriver$PoolGuardConnectionWrapper.checkOpen(PoolingDriver.java:263)
at org.apache.commons.dbcp.PoolingDriver$PoolGuardConnectionWrapper.close(PoolingDriver.java:268)
at com.sender.gsm.dao.Dao.closeConnection(Dao.java:38)
at com.sender.gsm.dao.OutDataDao.insertData(OutDataDao.java:91)
at com.sender.gsm.jobs.DataHandler.execute(DataHandler.java:49)
at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:557)
close connection函数为
public void closeConnection(Connection conn) throws SQLException {
if (conn != null ) {
conn.close();
}
}
com.sender.gsm.dao.Dao.closeConnection (Dao.java: 38)OutDataDao.java:91
从堆栈跟踪中,您在select后执行插入时关闭了连接。尝试创建新的连接。
你可能在select语句之后调用了closeConnection()
方法。因此,当它试图执行连接关闭的查询时,会在运行时抛出异常。
如果您正在使用连接池,请确保已将maxIdle
和maxActive
参数配置为合理的值