您的位置:首页 > 数据库

数据库连接池的连接过期问题

2016-03-10 16:05 225 查看
摘要:
  Can not read response from server. Expected to read 4  * bytes, read 0 bytes before connection was unexpectedly lost
 
项目出现以上错误。查询资料后发现是连接池的问题,用的dbcp。
mysql5.0之前在连接url后面加 autoReconnect=true参数。5.0之后就必须在mysql配置文件中进行配置了,不推荐。
其实c3p0和其他连接池有一个查询之前先验证的功能,比如druid有validationQuery=true属性。
但是在不换连接池的情况下,我能想到的解决方案是,定义一个查询方法:

public void validationQuery() {
try {
jdbcTemplate.execute("select 1");
} catch (Exception e) {
}
}


在出现错误的查询前,先调用这个方法。
  http://www.cnblogs.com/china-li/p/3568614.html  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: