每天早上打开app都会甩我一脸异常:
![](https://img-blog.csdn.net/20161130132745656)
![](https://img-blog.csdn.net/20161130132803099)
![](https://img-blog.csdn.net/20161130132813078)
我一眼看上去就感觉这个是后台的问题.....而且每次重启服务器就自动好了.不过重启服务器肯定不是解决方法并且公司写后台的已经离职.身为刚进公司的新萌就由我来接手.公司用的是mysql数据库,身为新萌的我只用过oracle.不过机智的我早就偷偷要下了那个人的QQ.得到的答复是,这是最新版本mysql的bug当时他就发现了,但是不影响开发,让我把mysql降级.我觉得这个对我有很大难度,而且数据库里已经有好多数据了.总之就是我不会.....然后那个人还说,也可以搜一下mysql5.6BUG,说不定有解决方法.
好吧,其实我默默的把报错的语句搜了一下,就得到了解决方法,那就是因为,mysql默认8个小时空闲的链接会自动断开,但是连接池不知道链接已经断了,他依然把这个已经断了的链接分配给了我.所有这就报错了.知道了原因,也就好办了,也很简单就是在spring的配置文件里配置一下,如果是在Spring中使用DBCP连接池,在定义datasource增加属性validationQuery和testOnBorrow:如下
spring.datasource.validation-query=SELECT 1
spring.datasource.test-on-borrow=true
如果是在Spring中使用c3p0连接池,则在定义datasource的时候,添加属性testConnectionOnCheckin和testConnectionOnCheckout.这个项目用的上面那个.
毫无压力,在次记录一下.