gpt4 book ai didi

java - MySQL 数据库连接几分钟后断开

转载 作者:行者123 更新时间:2023-11-29 12:53:09 24 4
gpt4 key购买 nike

我正在使用 Spring+Hibernate+JSF,但是如果我在页面上工作几分钟,我在尝试一些数据库查询时会遇到异常

 The last packet successfully received from the server was 2,615,049 milliseconds ago.  The last packet sent successfully to the server was 27 milliseconds ago.

Caused by: org.hibernate.TransactionException: JDBC begin transaction failed:
at org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.doBegin(JdbcTransaction.java:76)
at org.hibernate.engine.transaction.spi.AbstractTransactionImpl.begin(AbstractTransactionImpl.java:160)
at org.hibernate.internal.SessionImpl.beginTransaction(SessionImpl.java:1309)
at org.springframework.orm.hibernate4.HibernateTransactionManager.doBegin(HibernateTransactionManager.java:474)
... 46 more
Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

此问题是由于我的项目中的任何配置或其数据库供应商问题造成的吗在 web.xml 中我做了这个条目

<session-config>
<session-timeout>
30
</session-timeout>
</session-config>

连接池

<bean id="DataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<property name="driverClass" value="com.mysql.jdbc.Driver" />
<property name="jdbcUrl" value="jdbc:mysql://IP:3306/ccc" />
<property name="user" value=" hariom" />
<property name="password" value="password" />
<property name="maxPoolSize" value="2" />
<property name="maxStatements" value="0" />
<property name="minPoolSize" value="1" />
</bean>

最佳答案

您应该添加此属性;

<property name="validationQuery" value="SELECT 1" />

这将验证连接,如果 mysql 关闭连接,您的应用程序将不会尝试发送数据包。

关于java - MySQL 数据库连接几分钟后断开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24446280/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com