以编程方式检查JDBC中的开放连接 [英] programmatically checking for open connection in JDBC
问题描述
如何在oracle数据库的jdbc中检查打开的连接?
How do I check for an open connection in jdbc for oracle database?
注意: conn.isClosed()
不能用于此。
推荐答案
通常连接池也会使用Connection.isClosed()方法检查是否连接仍然有效。问题是并非所有JDBC驱动程序都能正确处理此调用。所以我假设有一些简单的检查语句就像RealHowTo所说的那样。对于Oracle,他已经提到了SELECT 1 FROM Dual,它应该始终为Oracle数据库成功。我认为对不同的数据库有类似的查询。我记得在之前的项目中我们还实现了一个自己的连接池,它使用了这样的验证查询。
Usually a Connection Pool will also use the Connection.isClosed() method to check if the Connection is still valid. The problem is that not all JDBC drivers will handle this call correctly. So I assume that there are some simple check statements just like RealHowTo said. For Oracle he already mentioned the "SELECT 1 FROM Dual" which should succeed always for Oracle databases. I think that there are similar queries for the different database. I can remember that in a previous project we also implemented an own Connection Pool which used such validation queries.
这篇关于以编程方式检查JDBC中的开放连接的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!