处理jdbc连接时尝试/捕获的最佳方法

时间:2014-03-18 23:43:31

标签: java jdbc

我试图找出在JDBC中处理连接时try / catch的最佳方法。

我的个人观点是。

Connection conn = null;
try{
    conn = getDBConnection(); 
    //Some jdbc code
} catch(SQLException e) {
    //...
} finally {
    if(conn != null) {
        try {
            conn.close();
        } catch(SQLException e) {
            //....
        }
    }
}

但我看到很少有聪明人在做这件事

Connection conn = null;
try{
    conn = getDBConnection(); 
    //Some jdbc code
    conn.close();
    conn = null;
} catch(SQLException e) {
    //...
} finally {
    if(conn != null) {
        try {
            conn.close();
        } catch(SQLException e) {
            //....
        }
    }
}

在try中关闭连接并将其设置为null是否有任何优势?

1 个答案:

答案 0 :(得分:5)

你聪明的家伙并不那么聪明。你的方法是要走的路。在finally块中仅关闭一次连接,并且没有理由将连接设置为null,这就是自动垃圾收集的用途。