使用Druid数据库连接在闲置一段时间后自动断开的问题

长门有葱 发布于 2014/05/04 18:48
阅读 1K+
收藏 1

@JFinal 你好,想跟你请教个问题:

使用JFinal自带的DruidPlugin连接数据库,其中的最小链接数、最小连接时间等参数都保持默认(也尝试修改过,但是没有解决问题),启动项目后,从数据库中查询一次数据,然后让项目闲置下来,之后在十几分钟后重新访问。会发现数据库的连接已经断开,需要花大量的时间(我的项目上是四十多s)去重新连接数据库,之后才能查询数据。这个时候就造成了页面一直卡在那里等待。

之前好几次用Jfinal写项目都碰到了这个问题,jar包也尝试都更新到各个新或者旧的版本,但都没有解决。请问到底是哪里的问题?会和数据库自身有问题么?数据库是mysql的,连接断开时间是默认的8小时。

加载中
0
本人纯属虚构
本人纯属虚构

按理说十几分钟不会断开啊...

0
长门有葱
长门有葱

引用来自“本人纯属虚构”的评论

按理说十几分钟不会断开啊...

我也是这样想啊。现在我把数据库连接本地的就没有这个问题了。。一模一样的数据。

怀疑问题出在mysql数据库上。

0
你要爪子
你要爪子

com.jfinal.plugin.druid.DruidPlugin.setValidationQuery(java.lang.String)

看下这个方法,mysql 设置个druid.setValidationQuery("select  1");就ok了

0
长门有葱
长门有葱

引用来自“你要爪子”的评论

com.jfinal.plugin.druid.DruidPlugin.setValidationQuery(java.lang.String)

看下这个方法,mysql 设置个druid.setValidationQuery("select  1");就ok了

我用1.6版的JFinal,看了源代码,发现里边默认就加过这个了啊。
返回顶部
顶部