java.sql.SQLException:封闭连接java JDBC

java.sql.SQLException:封闭连接java JDBC,java,jdbc,Java,Jdbc,我得到的生产错误如下。任何人都可以提供一些输入来消除这个错误 java.sql.SQLException: Closed Connection at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:113) at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:147) at oracle.

我得到的生产错误如下。任何人都可以提供一些输入来消除这个错误

java.sql.SQLException: Closed Connection
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:113)
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:147)
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:209)
    at oracle.jdbc.driver.OracleStatement.ensureOpen(OracleStatement.java:3550)
    at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3396)
    at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3460)
    at com.IBS.trade.order.netPortfolio.getClientPortfolioDetails(netPortfolio.java:556)
    at core.ClientThreadInteractive.getNetPortFolioData(ClientThreadInteractive.java:14403)
    at core.ClientThreadInteractive.netPortfolioSingle(ClientThreadInteractive.java:14370)
    at core.ClientThreadInteractive.run(ClientThreadInteractive.java:1895)

某处你正在关闭连接

con.close();

然后尝试访问数据库。

在某个地方您正在关闭连接

con.close();

然后尝试访问数据库。

跟踪显示,当您尝试使用时,您的连接已关闭。根据您的连接管理,几乎没有什么可能性

1-您调用的close()

2-您超过了最大空闲超时,因此数据库已关闭您的连接

con.close();
基本上,这取决于您如何管理您的连接,如果使用每个线程,那么它可能会在您的线程不工作时关闭


--有关连接管理的一些详细信息可以更好地解释这一点。

跟踪显示,当您尝试使用时,您的连接已关闭。根据您的连接管理,几乎没有什么可能性

1-您调用的close()

2-您超过了最大空闲超时,因此数据库已关闭您的连接

con.close();
基本上,这取决于您如何管理您的连接,如果使用每个线程,那么它可能会在您的线程不工作时关闭



--有关连接管理的一些详细信息可以更好地解释这一点

只需重新启动对我有用的应用程序。此错误是由于JDBC中的资源不可用或由于某种原因无法连接到DB。

简单地重新启动应用程序对我来说很有效。此错误是由于资源不可用或由于JDBC中的某些原因无法连接到DB造成的。

当您尝试执行SQL语句时,JDBC连接将关闭。你能展示代码吗?给出连接代码提供你使用连接的方法,一些代码然后我可以提供更好的解决方案当你尝试执行SQL语句时JDBCConnection是关闭的。你能展示代码吗?提供连接代码提供你使用连接的方式,一些代码然后我可以提供更好的解决方案然后这似乎是一个连接超时问题..你在使用连接池吗?对于任何查询的实时系统响应,需要快速。如果连接超时时间过长,会导致系统瘫痪。它可以产生级联效应。所谓连接超时,我的意思是,如果连接保持空闲超过指定的超时时间,连接就会关闭。它是由连接拉机制处理的。所以,若你们已经在使用池,那个么问题可能会有所不同。它会因为数据库端连接限制而引发吗!!Oracle数据库级别有一个参数,用于定义数据库中可以打开的连接数。但在数据库警报日志中找不到上述错误。您是否可以重新启动Oracle数据库..如果重新启动后问题消失..这与连接池有关..那么似乎是连接超时问题..您是否使用任何连接池?对于任何查询的实时系统响应,都需要快速。如果连接超时时间过长,会导致系统瘫痪。它可以产生级联效应。所谓连接超时,我的意思是,如果连接保持空闲超过指定的超时时间,连接就会关闭。它是由连接拉机制处理的。所以,若你们已经在使用池,那个么问题可能会有所不同。它会因为数据库端连接限制而引发吗!!Oracle数据库级别有一个参数,用于定义数据库中可以打开的连接数。但是在数据库警报日志中找不到与上述错误相关的内容。您是否可以重新启动Oracle数据库..如果重新启动后问题消失..这与连接池有关。。