2

検証クエリの代わりにJDBC4 Connection.isValidを使用して tomcat 7 jdbc プールを使用して jdbc 接続を検証したいと思います。

次のようなValidatorを実装するだけで十分かどうか疑問に思っています。また、どれがいいタイムアウトになるのだろうかと思っています。

前もって感謝します!フェデ

PS: 私はオラクル 11g を使用しています。

public class MyValidator implements Validator{
   public static final int DEFAULT_TIMEOUT = 5;

   public boolean validate(final Connection c, final int validateAction){
      try{
         return c.isValid(DEFAULT_TIMEOUT);
      }catch(Exception e){
        // LOG e
        return false;
      }
}
4

1 に答える 1

0

デバッガーは、状況のトラブルシューティングに役立ちます。Tomcat / DBCP 接続プールは未加工の接続を返しませんが、基になる「真の」接続をリサイクルするラッパー/アダプターを返します。通常、プールはそれ自体で接続をチェックし (必要に応じて再接続します)、実際に検証することはできないと思います。

Tomcat docにプール検証パラメーターに関する詳細情報があります。別の交換では、Oracle 接続をラップする JBoss プールに関する取引が行われています。これは一般的な方法です。

于 2014-12-21T10:43:59.623 に答える