リモートで接続して、mssql サーバー 2008 データベースでいくつかの crud を実行しています。私はJavaでビジネスロジックを持っており、接続、ステートメント、および結果セットclose()のタイトなコードをfinallyブロックに持っています。
私の疑問は、仕事を終えても接続ポートがまだ開いていて、すべての接続を閉じるのに約20分かかるということです. netstat -a コマンドを使用して、開いている接続を表示できます。
各操作で接続を数回開いたり閉じたりするため、接続をすばやく閉じる必要があります。したがって、多数の接続が開いていることがわかります。これは非常に安全ではなく、ビジネス ロジックが既に閉じている多くの不要な接続を長時間保持するのはコストがかかります。最新の jtds.jar ファイルを使用しています。ヒントや提案をいただければ幸いです。
ありがとう、
アクシャイ
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
try {
// Do stuff
...
} catch (SQLException ex) {
// Exception handling stuff
...
} finally {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) { /* ignored */}
}
if (ps != null) {
try {
ps.close();
} catch (SQLException e) { /* ignored */}
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) { /* ignored */}
}
}