HikariCP接続プールを使用しようとしています。私はそれを機能させ、使用できる接続を得ることができました。接続をプールに戻すための最善のアプローチが何であるかわかりません。
次の質問があります。
役立つ提案を探しています。
ほとんどの接続プールと同様に、Hikariは実際のJDBC接続を要求したときに提供しません。代わりに、Connection
インターフェイスを実装するプロキシを提供します。ひかりの場合、これはConnectionProxy
オブジェクトです。
このプロキシはいくつかの目的を果たしますが、その主な目的は、接続とステートメントの開閉の制御をユーザーから離れて接続プールに移すことです。これは自動的に発生し、通常どおり接続を使用する必要があります。これには、使用後にそれらを閉じることも含まれます。
Hikariのソースコード を見ると、特にConnectionProxy
クラスでは、close()
メソッドが標準のメソッドと大きく異なることがわかります。コードは次のようになります。
接続を閉じたものとしてマークし、クリーンアップを実行し、基になる接続状態とパラメーターをリセットします。
したがって、close()
を呼び出すだけで、接続がクリーンアップされてプールに返されます。