<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-61  評論-13  文章-19  trackbacks-0

    在Connection上調用close方法會關閉Statement和ResultSet嗎?

    級聯的關閉這聽起來好像很有道理,而且在很多地方這樣做也是正確的,通常這樣寫
    Connection con = getConnection();//getConnection is your method
    PreparedStatement ps = con.prepareStatement(sql);
    ResultSet rs = ps.executeQuery();
    ……
    ///rs.close();
    ///ps.close();
    con.close();? // NO!
    這樣做的問題在于Connection是個接口,它的close實現可能是多種多樣的。在普通情況下,你用 DriverManager.getConnection()得到一個Connection實例,調用它的close方法會關閉Statement和 ResultSet。但是在很多時候,你需要使用數據庫連接池,在連接池中的得到的Connection上調用close方法的時候,Connection可能并沒有被釋放,而是回到了連接池中。它以后可能被其它代碼取出來用。如果沒有釋放Statement和ResultSet,那么在Connection上沒有關閉的Statement和ResultSet可能會越來越多,那么……
    相反,我看到過這樣的說法,有人把Connection關閉了,卻繼續(xù)使用ResultSet,認為這樣是可以的,引發(fā)了激烈的討論,到底是怎么回事就不用我多說了吧。

    所以我們必須很小心的釋放數據庫資源,下面的代碼片斷展示了這個過程

    Connection con = null;
    PreparedStatement ps = null;
    ResultSet rs = null;

    try {
    ??? con = getConnection();//getConnection is your method
    ??? ps = con.prepareStatement(sql);
    ??? rs = ps.executeQuery();
    ??? ///...........
    }
    catch (SQLException ex) {
    ??? ///錯誤處理
    }
    finally{
    ??? try {
    ??????? if(ps!=null)
    ??????????? ps.close();
    ??? }
    ??? catch (SQLException ex) {
    ??????? ///錯誤處理
    ??? }
    ??? try{
    ??????? if(con!=null)
    ??????????? con.close();
    ??? }
    ??? catch (SQLException ex) {
    ??????? ///錯誤處理
    ??? }
    }

    ?

    posted on 2006-03-23 22:27 xnabx 閱讀(505) 評論(0)  編輯  收藏 所屬分類: Java
    主站蜘蛛池模板: 亚洲av无码成h人动漫无遮挡| 亚洲一久久久久久久久| 91大神亚洲影视在线| 亚洲AV无码专区在线观看成人| 在线免费视频你懂的| AV片在线观看免费| 亚洲国产精品无码中文字| 一级做a爰片久久毛片免费看| 久久精品免费观看| 免费观看的av毛片的网站| 中文字幕亚洲天堂| 亚洲JIZZJIZZ妇女| 精品免费久久久久久久| 亚洲精品~无码抽插| 无码AV动漫精品一区二区免费| 成年丰满熟妇午夜免费视频| 久久亚洲AV无码精品色午夜麻豆| 51视频精品全部免费最新| 亚洲A∨无码一区二区三区| a级毛片免费高清视频| 亚洲国产精品无码久久久久久曰| 亚洲精品蜜夜内射| gogo全球高清大胆亚洲| 老司机免费午夜精品视频| 精品国产麻豆免费网站| 人妻仑乱A级毛片免费看| 国产av天堂亚洲国产av天堂| 国产在线国偷精品产拍免费| 免费大片黄在线观看| 日韩精品电影一区亚洲| 免费黄色电影在线观看| 国产 亚洲 中文在线 字幕| 国产卡二卡三卡四卡免费网址 | 青青青青青青久久久免费观看| 男男黄GAY片免费网站WWW| 美女被免费视频网站a国产| 国产精品成人免费观看| 亚洲剧场午夜在线观看| 日韩精品成人无码专区免费| 日韩大片在线永久免费观看网站| 亚洲经典在线观看|