このテキストでは、接続の中止を防ぐための3つの解決策について説明しています。
-
autoReconnect=true
を使用して接続文字列を構成します 。これは、ドライバレベルで機能するURL接続文字列のプロパティです。データソース構成で接続文字列を変更する必要があります。url="jdbc:mysql://localhost:3306/confluence?autoReconnect=true"
-
タイムアウトを増やします。これは通常、データベースのプロパティです。この値を増やすと、接続の中止が少なくなるかどうかを確認できます。
-
接続の有効性をテストするように接続プールを構成します。これは、ドライバーレベルではなく、プールで行われます。これは、使用するデータソースの実装によって異なります。ただし、プールされたものを使用する場合は、データソースのプロパティで構成可能である必要があります。 c3p0 。
追加コメント:
- データソース/プールにはタイムアウトを設定することもできます。これは、アイドル状態の接続がプールに残っている時間に対応します。 dbタイムアウトと混同しないようにします。
- 接続の有効性をテストする方法はいくつかあります。一般的な方法の1つは、ダミーのテストテーブルを用意することです。プールはダミーテストテーブルに対してselectを発行して、接続がまだ正常かどうかを確認します。