信頼性が高く効率的な方法で、JDBC を使用して切断された接続をどのように検出しますか? 現在、Vertica JDBC ドライバーを使用しています。どのノードに接続しているかを常に制御する必要があるため、接続プールを使用できるとは思いません。これまでに考えたこと:
- SQLException が失われた接続であると想定します。信頼できないようです。
- ex.getCause を確認し、ソケット例外を探します。原因を確認することが良い習慣であるかどうかはわかりません。
- 接続が失われた場合であることがわかっているエラーコードを確認してください。また、少し信頼できないようです。
編集: isValid と isClosed を試しました。isValid は例外をスローし、isClosed は関係なく常に false を返します。