写数据库的时候经常会遇到如下的close()代码:public void close(){
try{
if(sqlRs!=null){sqlRs.close();} //这里如果有异常,下面语句将无法执行
if(preStmt!=null){preStmt.close();} //同上
if(conn!=null){conn.close();}
}catch(SQLException ex){
System.err.println(ex.getMessage());
}
}三个close,如果前面的异常了,则后面的无法被执行,请问如何保证3个都被执行呢?
难道要写3个try{}catch(){} ?
try{
if(sqlRs!=null){sqlRs.close();} //这里如果有异常,下面语句将无法执行
if(preStmt!=null){preStmt.close();} //同上
if(conn!=null){conn.close();}
}catch(SQLException ex){
System.err.println(ex.getMessage());
}
}三个close,如果前面的异常了,则后面的无法被执行,请问如何保证3个都被执行呢?
难道要写3个try{}catch(){} ?
http://topic.csdn.net/u/20081128/11/2b590a63-4ab7-46e0-ab69-4a25be0978ad.html
尤其最后关闭连接,一定要写在finally{}里,保证执行
虽然这样还是不能保证绝对安全,但try,catch结构本身也只能做到这个地步