启动工程后,开始运行正常,但运行一段时间访问量稍微变大后控制台会报错:
1. org.hibernate.exception.JDBCConnectionException: could not execute query
2. at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:74)
3. at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
4. .......
5. Caused by: com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: No operations allowed after connection closed.Connection was implicitly closed due to underlying exception/error:
6.
7.
8. ** BEGIN NESTED EXCEPTION **
9.
10. com.mysql.jdbc.CommunicationsException
11. MESSAGE: Communications link failure due to underlying exception:
12.
13. ** BEGIN NESTED EXCEPTION **
14.
15. java.net.SocketException
16. MESSAGE: Broken pipe
17.
18. STACKTRACE:
19.
20. java.net.SocketException: Broken pipe
21. at java.net.SocketOutputStream.socketWrite0(Native Method)
22. ......
23. ** END NESTED EXCEPTION **
连接池的问题,网上对比 c3p0 表现最好,我们这里也不用dbcp了,改用c3p0,查阅c3p0的文档在官方网站上找不到,注意dbcp和c3p0的文档都是在它们的下载包里面,而不是在官方网站上。
将配置文件改成c3p0:
<bean id="mysqldb"
class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="driverClass"
value="com.mysql.jdbc.Driver">
</property>
<property name="jdbcUrl"
value="jdbc:mysql://192.168.1.44:3306/clothes?useUnicode=true&amp;characterEncoding=gbk&amp;characterSetResults=gbk">
</property>
<property name="user" value="yourname"></property>
<property name="password" value="yourpsd"></property>
<property name="testConnectionOnCheckin" value="true"></property>
<property name="automaticTestTable" value="testc3p0"></property>
<property name="idleConnectionTestPeriod" value="18000"></property>
<property name="maxIdleTime" value="25000"></property>
<property name="testConnectionOnCheckout" value="true"></property>
<property name="autoCommitOnClose" value="true"></property>
<property name="checkoutTimeout" value="30000"></property>
<property name="initialPoolSize" value="2"></property>
<property name="minPoolSize" value="2"></property>
<property name="maxPoolSize" value="5"></property>
<property name="acquireIncrement" value="1"></property>
<property name="maxIdleTimeExcessConnections" value="20000"></property>
</bean>
问题解决。
参考:
http://fishyych.iteye.com/blog/90793
http://azi.iteye.com/blog/182146
http://blog.csdn.net/voff12/archive/2007/06/03/1636344.aspx
http://blog.csdn.net/lip8654/archive/2008/02/26/2121387.aspx
分享到:
相关推荐
Cause com.mysql.jdbc.exceptions.jdbc4.CommunicationsException The last packet successfully received from the server was 47,795,922 milliseconds ago. The last packet sent successfully to the server was...
1、写在开头 标题之前我想说一下Linux的mysql真的实在是太坑了。太坑了。总是会出现这样那样的你想不到的问题。崩溃了。首先来罗列一下我遇到过的...Cause:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorExcepti
本次异常的具体描述为:“Communications link failure due to underlying exception: **BEGINNESTED EXCEPTION** java.io.EOFException STACK TRACE: java.io.EOFException at com.mysql.jdbc.MysqlIO.readFully...
`com.mysql.jdbc.PacketTooBigException` 是MySQL JDBC驱动抛出的一个异常,它表示在网络传输过程中,发送到服务器的数据包超过了MySQL服务器允许的最大大小。在描述中提到的错误信息 "Packet for query is too ...
在给定的信息中,我们注意到一个具体的错误信息:“com.baomidou.mybatisplus.core.exceptions.MybatisPlusException: Error:GlobalConfigUtils setMetaData Fail !”。这个错误提示表明在使用 MyBatis Plus 时出现...
- Hibernate与MySQL配合时,如果需要使用自增长列,可能需要特别处理,因为C-JDBC可能不支持自动增长列的特性。 - 确保环境变量`JAVA_HOME`的路径没有空格,否则可能导致运行错误。 C-JDBC的主要优势在于提供了一...
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Access denied for user ''@'localhost' to database 'hibernate' at sun.reflect.NativeConstructorAccessorImpl.new
在Centos上部署项目发现一个奇怪的问题,数据库连接一直抛异常。于是花了两个小时搜了各种数据库连接异常导致的原因,最终问题得以解决。同时,把解决过程中搜集到的异常信息汇总一下,当大家遇到...com.mysql.jdbc.exc
7. **错误处理**:`com.mysql.cj.jdbc.exceptions` 包下的异常类封装了与数据库交互时可能出现的各种错误,便于开发者进行异常处理。 8. **连接池支持**:驱动支持常见的连接池框架,如 C3P0、HikariCP、Druid 等,...
MySQL Connector/J 5.1.12 是 MySQL 官方提供的用于 Java 应用程序...3. com.mysql.jdbc.exceptions 包:包含所有由 MySQL Connector/J 抛出的异常类,如 `com.mysql.jdbc.exceptions.MySQLSyntaxErrorException` 和 `...
对于MySQL,驱动类名通常是`com.mysql.jdbc.Driver`;Oracle则是`oracle.jdbc.driver.OracleDriver`;而对于SQL Server,驱动类名是`com.microsoft.sqlserver.jdbc.SQLServerDriver`。确保正确选择并输入这些信息,...
5. **异常处理**:`com.mysql.jdbc.exceptions`包包含了各种可能的数据库交互异常,如`SQLException`,这些异常在出现问题时被抛出,帮助开发者定位问题。 6. **性能优化**:源代码中包含了一些性能优化策略,例如...
解决:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after statement closed.
MyEclipse8.x是一款强大的Java集成开发环境,是Eclipse的商业版本,它集成了许多开发者需要的功能,如Web、Java EE、J2ME、PHP等项目的开发工具。然而,对于中文用户来说,原版的MyEclipse界面是英文的,可能会给...
1、Caused by: com.MySQL.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully received from the server was 56,201,339 milliseconds ago. The last packet sent successfully to the...
最美POETIZE个人博客系统源码 这是一个 SpringBoot + Vue2 + Vue3 的产物,支持移动端自适应,配有完备的前台和后台管理功能。 网站分两个模块: 博客系统:具有文章,表白墙,图片墙,收藏夹,乐曲,视频播放,...
5. **异常处理**:当数据库操作遇到问题时,会抛出特定的异常,如`com.mysql.jdbc.exceptions.MySQLSyntaxErrorException`和`com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException`等。...
例如,`com.mysql.jdbc.exceptions`包下包含了一系列异常类,用于处理在数据库操作中可能出现的问题。`com.mysql.jdbc.JDBC4Connection`是JDBC 4版本的连接实现,增加了新的特性支持。 深入理解Java MySQL驱动源码...
`nacos-server-1.2.0-mysql8.tar.gz` 文件是Nacos服务器的1.2.0版本,特别优化了对MySQL 8.0的支持。这意味着Nacos可以与最新的MySQL数据库版本无缝集成,提供了更稳定的数据存储能力,同时利用了MySQL 8.0的性能...