我已将 Tomcat 设置为使用连接池,但在 MySQL 连接超时后,之前在池中打开的连接未打开。这是我的 context.xml 文件的样子:
<Resource name="jdbc/hpsgDB" auth="Container" type="javax.sql.DataSource"
maxActive="5" maxIdle="3" maxWait="10000"
username="uname" password="password" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/hpsgdb?autoReconnect=true"/>
如您所见,我已将 autoReconnect 包含为 true,但它没有。我在 8 小时后检查了数据库上的进程,这是超时设置的时间。
最佳答案
尝试添加验证查询属性。这应该具有在超时后自动关闭并重新打开连接的效果,如下所示:
validationQuery="SELECT 1"
关于tomcat - JDBC 连接池未在 Tomcat 中重新打开连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1870288/