检测数据库已关闭

时间:2014-05-09 10:48:47

标签: java jdbc

我想检测数据库何时关闭,我知道一旦数据库关闭,它将抛出一个SQLException。使用Connection.isValid()。超时参数代表什么?它说:

  

timeout - - 等待数据库操作的时间(以秒为单位)   用于验证连接完成。如果是超时期限   在操作完成之前到期,此方法返回false。一个   值为0表示超时未应用于数据库   操作

这是什么意思?

3 个答案:

答案 0 :(得分:1)

isValid()方法允许您检查Connection的有效性。

对于此方法,您可以指定超时(以秒为单位),当此超时在内部有效性检查完成之前用完时,该方法将返回false。

如果您不希望程序等待很长时间,以防有效性检查时间过长,这将非常有用。

如果您输入0作为超时输入,则不会应用超时,程序将等到检查完成。

答案 1 :(得分:0)

嗯,"数据库已关闭"意味着它没有回应。它并不像它可以告诉你的那样......嘿,我沮丧"。因此超时意味着在将数据库视为脱机之前,此方法等待响应的时间有多长。

答案 2 :(得分:0)

如果任何连接闲置很长时间,则表示丢弃连接的时间。