2011-02-01 116 views
0
public void XXX(){ 
    Connection conn = ~~;   
    CallableStatement cstmt = conn.prepareCall("{call XXX"); 
    cstmt.executeUpdate(); 
    cstmt.close(); 
} 

CallableStatement在close()中被類似上面提到的方法一行一行地描述的所有方法。 不能如何通過自動操作完成每個方法中的close()操作?關閉一個CallableStatement

是否存在可以用java5或java6實現的方法?

請告訴我一個更好的表達,因爲我是日本人。

+0

使用大括號`{}`按鈕編輯窗口格式事情上面的代碼。此外,還有一個預覽窗口,您可以查看您的文章的外觀。 – 2011-02-01 02:46:56

回答

0

關閉數據庫對象應該始終在finally塊中完成,以便它們在不管是否發生異常的情況下都會關閉。

Connection c = null; 
CallableStatement cstmt = null; 

try { 
    conn = getAConnectionSomewhere(); 
    cstmt = conn.prepareCall("{call XXX"); 
    cstmt.executeUpdate(); 
} finally { 
    IOUtils.close(cstmt); 
    IOUtils.close(conn); 
} 

這裏,我冒昧使用IOUtils從公地IO