Springboot2.x结合Mabatis3.x下Hikari连接数据库报超时错误
原来Springboot1.x的版本没有这个问题,升级到2.x之后,刚启动没有问题,数据库获取数据很正常,但是几分钟没有数据库操作后,定时任务连接数据库时会报超时。
HikariPool-1 - Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl@4615f6a1 (No operations allowed after connection closed.). Possibly consider using a shorter maxLifetime value.
按照提示将maxLifetime参数调短发现不起作用,
而且各个参数都调成60s,超时警告依然在30s的时候触发,应该是配置方式有问题。按照各种教程试下来都没有解决问题,对于springboot的数据库连接这块不熟,但推测问题还是在数据库连接线程程序端和数据库端不同步导致的。
最终用来一种很临时的方式解决了:
定时任务里面开一个30s执行一次的任务,在里面执行一次数据库操作,确实问题没有再出现了。
Task:
@Scheduled(cron = "0/30 * * * * ?") public void sqlConnectTest() { if(!accountInfoService.sqlTest()){ log.info("sql连接失败"); } }
Mybatis Mapper XML:
<select id="sqlTest" resultType="int"> select 1; </select>
对于这块不熟,只能临时应急,希望可以遇到解决方案。
到此这篇关于Springboot2.x结合Mabatis3.x下Hikari连接数据库报超时错误的文章就介绍到这了,更多相关Springboot Hikari连接数据库超时内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Mybatis-Spring连接mysql 8.0配置步骤出错的解决方法
这篇文章主要为大家详细介绍了Mybatis-Spring连接mysql 8.0配置步骤出错的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2019-06-06Spring Data Jpa 复杂查询方式总结(多表关联及自定义分页)
这篇文章主要介绍了Spring Data Jpa 复杂查询方式总结(多表关联及自定义分页),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-02-02
最新评论