您的位置:首页 > 编程语言 > Java开发

JavaSE__Jdbc关闭

2015-11-19 18:17 447 查看
示例一:
JDBC数据库的关闭
	public static void close(Connection con) {if (con != null)try {con.close();} catch (SQLException e) {// 不做任何处理,静默处理}}public static void close(ResultSet rs) {if (rs != null)try {rs.close();} catch (SQLException e) {// 不做任何处理,静默处理}}public static void close(Statement stmt) {if (stmt != null)try {stmt.close();} catch (SQLException e) {// 不做任何处理,静默处理}}  public static void DBClose(ResultSet rs, Statement stmt, Connection conn) {try {close(rs);} finally {try {close(stmt);} finally {close(conn);}}}
示例二:
失败的关闭和释放 JDBC 连接可能导致其它用户的连接经历长时间的等待。虽然超时的JDBC 连接会被 WebSphere Application Server 退回而被回收 ,但必须等待这种情形发生。使用完 JDBC 资源后关闭它们,还可以显式关闭 JDBC ResultSets。如果没有显式关闭语句,则在完成了相关语句之后会释放 ResultsSets。所以请确保您构建的代码在所有情况下,甚至在异常和错误条件下,都能关闭和释放 JDBC 资源。以下代码显示了 JDBC 资源的获得和使用都封装在“Try-Catch-Finally”结构中。其中,在finally 子句中处理 JDBC 资源的关闭,使所有情况下关闭都将发生。关闭 JDBC Connection 和 preparedStatement 的正确方式Connection conn = null;ResultSet rs = null;preparedStatement pss = null;try{conn = dataSource.getConnection(USERID,pASSWORD);pss = conn.prepareStatement("SELECT SAVESERIALZEDDATA FROM SESSION.pINGSESSION3DATA WHERE SESSIONKEY = ?");pss.setString(1,sessionKey);rs = pss.executeQuery();pss.close();conn.close();}catch (Throwable t){// Insert Appropriate Error Handling Here}finally{// The finally clause is always executed - even in error// conditions preparedStatements and Connections will always be closedtry{if (pss != null)pss.close();}catch(Exception e) {}try{if (conn != null)conn.close();}catch (Exception e){}}}
示例三:
public static void closed(ResultSet rs, PreparedStatement pstm, Connection con) {try {if (rs != null) {rs.close();rs = null;}if (pstm != null) {pstm.close();pstm = null;}if (con != null) {con.close();con = null;}} catch (Exception e) {e.printStackTrace();}}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: