java.sql.SQLException: 连接关闭后不允许任何操作。数据库:mysql

异常:java.sql.SQLException:连接关闭后不允许任何操作。

当我尝试运行我的应用程序时,我遇到了这个奇怪的异常。我正在为连接对象使用局部变量,并且在执行某些语句后引发了此异常。我正在使用 c3p0 连接池和 MySQL 数据库。


牧羊人nacy
浏览 255回答 1
1回答

红颜莎娜

没有看到你的代码就很难诊断这个问题,但我曾经遇到过类似的问题,因为 mysql 会在一段时间后关闭连接;所以确保你的数据源的配置有一个验证查询,并且 testOnBorrow 和 testWhileIdle 都是真的。这是一个例子:&nbsp;&nbsp;&nbsp;&nbsp;<Resource&nbsp;auth="Container"&nbsp;type="javax.sql.DataSource"&nbsp;name="jdbc/mydb" &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;driverClassName="com.mysql.jdbc.Driver" &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url="jdbc:mysql://myserver/mydb" &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;maxActive="10" &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;maxIdle="5" &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;validationQuery="SELECT&nbsp;1" &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;testOnBorrow="true" &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;testWhileIdle="true" &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;timeBetweenEvictionRunsMillis="10000" &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;minEvictableIdleTimeMillis="60000" &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;username="???"&nbsp;password="???"/>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java