日期:2014-05-20  浏览次数:20811 次

如何判断数据库连接已关闭
我写的一个程序里面需要不断的向oracle数据库中插入或更新数据,如果在插入或更新数据库的过程中由于服务器关机或网络中断等原因导致数据库连接中断就需要停止更新数据库的线程运行,那么如何检测数据库连接已关闭呢?如果在抛出的异常中判断的话,由于我只希望只在数据库连接中断的情况下停止线程运行,其他数据库错误则不停止,如何区分这两种情况呢?还有无更好的解决方法呢?多谢了

------解决方案--------------------
思路:可以根据异常的类型(由于插入或更新数据失败或者服务器关机或网络中断等原因 等等,抛出的异常也不一样),可以捕获不同类型的异常,做不同的处理。
------解决方案--------------------
探讨
思路:可以根据异常的类型(由于插入或更新数据失败或者服务器关机或网络中断等原因 等等,抛出的异常也不一样),可以捕获不同类型的异常,做不同的处理。

------解决方案--------------------
那你就只捕获关机的异常
------解决方案--------------------
Connection
isClosed() 
查询此 Connection 对象是否已经被关闭。

isValid(int timeout) 
如果连接尚未关闭并且仍然有效,则返回 true。
------解决方案--------------------
探讨
Connection
isClosed()
查询此 Connection 对象是否已经被关闭。

isValid(int timeout)
如果连接尚未关闭并且仍然有效,则返回 true。