异常详细:ERROR: No operations allowed after connection closed.
异常原因:Caused by: org.hibernate.TransactionException: unable to rollback against JDBC connection
.................
Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully received from the server was 53,775,153 milliseconds ago. The last packet sent successfully to the server was 53,775,153 milliseconds ago. is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem.
Mysql服务器默认的“wait_timeout”是8小时,也就是说一个connection空闲超过8个小时,Mysql将自动断开该connection。当connection设置为static类型时候,connection pools中的connections如果空闲超过8小时,mysql将其断开,connection提交或者撤销事务时,就会出现上面的异常。
解决方案:其实上面的异常原因有提示具体的解决方案。
<property name="connection.provider_class">org.hibernate.c3p0.internal.C3P0ConnectionProvider</property> <!-- 最小连接数 --> <property name="hibernate.c3p0.min_size">5</property> <!-- 最大连接数 --> <property name="hibernate.c3p0.max_size">20</property> <!-- 获得连接的超时时间,如果超过这个时间,会抛出异常,单位毫秒 --> <property name="hibernate.c3p0.timeout">300</property> <!-- 每隔3000秒检查连接池里的空闲连接 ,单位是秒--> <property name="hibernate.c3p0.idle_test_period">3000</property> <!--查询的最大结果集 --> <property name="hibernate.c3p0.max_statements">50</property> <!-- 每次都验证连接是否可用 --> <property name="hibernate.c3p0.validate">true</property> <!-- 当连接池里面的连接用完的时候,C3P0一下获取的新的连接数 --> <property name="hibernate.c3p0.acquire_increment">2</property>
相关推荐
解决:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after statement closed.
使用mysql+cp30连接池时,报错No operations allowed after connection closed。从报错信息来看,是connection断开导致的错误。在网上搜索后发现,较新版本的mysql配置了connection的默认时间,默认时间一般为8个...
import cycle not allowed(解决方案).md
Method Not Allowed(解决方案).md
document.write is not allowed in a script tag(解决方案).md
File Type Not Allowed(解决方案).md
document.write is not allowed in a link tag(解决方案).md
document.write is not allowed in a style tag(解决方案).md
File size exceeds the maximum allowed limit(解决方案).md
Your file is too big. Maximum allowed size is X KB(解决方案).md
在本文中,我们将详细解释 Cause = 51 (0x33) (PDU 会话类型 IPv6 Only Allowed) 的含义和解决方案。 协议描述 根据 3GPP 协议第 24501 号文件第 6.4.1.3 章节描述,如果 PDU SESSION ESTABLISHMENT REQUEST 消息...
java.sql.SQLException: Operation not allowed after ResultSet closed java.sql.SQLException: QueryRunner requires a DataSource to be invoked in this way, or a Connection should be passed in
在解决这个问题的过程中,`彻底删除mysql.doc`这个文档可能包含了解决方案的详细步骤,或者是一份关于如何完全卸载和重装MySQL的指南。如果你无法连接到MySQL服务器,可能需要查看这份文档以获取更多帮助。 对于...
本资料包“Tomcat跨域请求资源解决方案.zip”显然是针对这个问题提供了一个具体的解决方案,主要聚焦于如何在Apache Tomcat服务器上配置以允许跨域请求。 Tomcat是Java Servlet容器,广泛用于部署Java Web应用程序...
本文将详细介绍在使用curl访问特定域名时遇到405 Method Not Allowed错误的解决方法。首先,我们先来理解什么是405错误以及其背后可能的原因。 HTTP状态码405 Method Not Allowed表示客户端请求的HTTP方法不被...
在這篇文章中,我們將詳細解釋這個錯誤的原因、解决方案和避免這個錯誤的方法。 錯誤原因 當 PHP 腳本執行時,它需要分配一定的内存空間來存儲數據和執行操作。如果腳本需要的内存空間超出了 PHP 設定的内存限制,...
Android WebView 报 Not allowed to load local resource错误的解决办法 博客地址:http://blog.csdn.net/yuzhiqiang_1993/article/details/76228541
ctf ai
### MySQL 5.7 中 max_allowed_packet 参数的理解与调整 #### 一、max_allowed_packet 参数简介 在MySQL数据库中,`max_allowed_packet` 参数用于控制客户端与服务器之间单个数据包的最大大小。此参数对诸如大BLOB...