Java中的超时数据库连接

Posted

技术标签:

【中文标题】Java中的超时数据库连接【英文标题】:Timeout Database connection in Java 【发布时间】:2014-09-23 12:27:57 【问题描述】:

Java 中有哪些选项可用于在特定时间段使数据库连接超时?

例如,应用程序从数据源创建数据库连接,然后执行 SQL 查询,这可能需要 5,15 甚至超过 60 分钟才能返回结果。此行为会导致其他问题。

我要问的是关于这种情况,我们如何让应用程序进行数据库调用,如果查询仍在运行,15 分钟后停止查询,关闭连接并继续应用程序执行?

谢谢

【问题讨论】:

***.com/questions/1683949/… 【参考方案1】:

这可以通过设置事务超时来实现。如果事务超过预先配置的超时,将抛出异常。

事务超时配置取决于您的环境,但很容易找到每个应用程序服务器或框架的说明。例如在 Spring 中,这可以通过注解 @Transactional (documentation link) 的属性来控制。

【讨论】:

谢谢亚历克斯。会试一试。听起来应该可以解决这个问题。

以上是关于Java中的超时数据库连接的主要内容,如果未能解决你的问题,请参考以下文章

用jdbc连接mysql数据库,执行程序一段时间后控制台报连接超时。why,如何解决!

java应用调用数据库超时,数据库自己sql很正常

获取 java.net.SocketTimeoutException:android 中的连接超时

oracle闲置超时,怎么样重新连接(急)

接口超时需要怎么处理

索引期间Solr连接超时?