记本地Debug测试遇见异步处理操作数据库遇见的问题

2020-12-17  本文已影响0人  SILENCE_SPEAKS

1. 打断点本地测试异步处理,在异步处理子线程里操作数据库报数据库连接池已关闭错误

这里使用 SpringBoot 自带的数据库连接池(HikariDataSource)为例

<!-- 错误1 -->
Caused by: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is java.sql.SQLException: HikariDataSource HikariDataSource (HikariPool-1) has been closed.
<!-- 错误2 -->
java.sql.SQLException: Connection has already been closed

解决方法:

本地测试时,在主线程里加个线程休眠(Thread.sleep()),以确保子线程可以执行完毕。

上一篇下一篇

猜你喜欢

热点阅读