ブログリトライ

初心に戻って運営するブログです

コネクションプール使用時の解放もれ

某サイトで解放もれが原因のメモリー不足が発生してる模様。根本的にソースを直す以外に良い方法が無いか探してるんだけど、根本的に直さないとダメっぽい。。。せめてDBCPの辺りでどうにかできればなぁ。。。

とりあえずbeaのサイトに出てるConnectionをちゃんと開放するサンプルはこんな感じ

Connection con = null;
ResultSet rs = null;
Statement stmt = null;
try{
con = ds.getConnection();
//DB処理
}catch(SQLException sqle){
//例外処理
}finally{
try{rs.close();}catch(SQLException sqle){sqle.printStackTrace();}
try{stmt.close();}catch(SQLException sqle){sqle.printStackTrace();}
try{con.close();}catch(SQLException sqle){sqle.printStackTrace();}
}

http://www.beasys.co.jp/BeaPortal/cs/solution/getSolution.do?solutionId=18089