posts - 165, comments - 198, trackbacks - 0, articles - 1
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          hibernate 包裝

          Posted on 2007-07-04 16:49 G_G 閱讀(1038) 評論(5)  編輯  收藏 所屬分類: hibernate
          07-11-9
          由于我對hibernate理解的深入,在次我來終結(jié)下這篇文章的不足的地方(好多人在拍磚哈)
          對復雜的邏輯這樣開和關(guān)太冒失了。
          ? 在普通的邏輯方法中 session都疊加的用上2次以上 這就要對一級緩沖的管理。事物的使用也是一樣。


          下載:
          ?
          http://www.aygfsteel.com/Files/Good-Game/hibernateUtil.rar

          簡單的繼承包 :?
          ??????繼承 DBManage 類? 把?數(shù)據(jù)包裝類 管理 (?填充 ,?set 等 ) 后就直接放到里 insert , update , delete 方法中
          ???????? 填充可看看這個,很有實用價值 ----> (?當 Form -> Bean? 或?Bean ->Bean ?) 例子很簡單但想法表明??
          ???????????????????????????????????????????????????????????????????????????
          ??????繼承 DBSelect 類 為 select? 這只是 把 Query 給出 簡單用法 是
          ??????????????????????????????????????????????????????Query?qu =???dao.getQueryBegin(? "?HQL?"?);
          ??????????????????????????????????????????????????????????????qu.add .....
          ??????????????????????????????????????????????????????List li = dao.getQuertyEnd(?qu?);
          ?????擴展:? Criteria? cr , SQLQuery , 等等 把她包裝成 各個 dao 中 不是 很 偷懶???? : )


          Eg :??? ?extendsDBBasic 類
          ????public?List?select(String?id,String?time){

          ????????List?list?
          =?new?ArrayList();
          ????????
          ??????? Query qu =
          getQueryBegin("HSQL");?? //繼承帶來的好處
          ????????
          ??????? .add..........

          ?????????????
          ?????? List list = getQuertyEnd(qu);
          ?? //繼承結(jié)束
          ????????

          ????????
          return??list;
          ????}

          缺點: 最好不要static?在一時間點上 此類不能支持多線程?
          ???????????????basicBegin? basicEnd ?方法 (?我找不到好的方法 要的話來個 連接池什么的 大家討論西西吧!!??)
          ?????????????? sess 為全局的 session 要是 寫成?baseicBegin 返回的話 感覺下面的還有很多要寫 什么 close 啊...
          ?????????????????????sess 也是缺點的所在? 當然大家 有什么想法 改下 或自己來個 小包裝 我只是? ??拋磚引玉
          ???
          ????private?Map?transmap?=?new?HashMap();

          ????
          protected?Session?basicBegin(){
          ????????Session?sess?
          =?SessionManager.currentSession();
          ????????
          try?{
          ????????????transmap.put(?sess,?sess.beginTransaction()?);
          ????????}
          catch(Exception?e){System.out.println(e);}
          ????????
          return?sess?;
          ????}
          ????
          ????
          protected?void?basicEnd(Session?sess){
          ????????
          try?{
          ????????????((Transaction)transmap.remove(sess)).commit();
          ????????}
          catch(Exception?e){System.out.println(e);}
          ????????
          finally{
          ????????????sess?
          =?null?;
          ????????????SessionManager.closeSession();
          ????????}
          ????}

          心得: 多包裝多快樂

          評論

          # re: hibernate 初包裝(簡單)  回復  更多評論   

          2007-07-04 22:08 by end
          暈死,還有這樣寫的。

          # re: hibernate 初包裝(簡單)  回復  更多評論   

          2007-07-05 10:28 by tt
          真是受不了,林子大了什么鳥都有??!

          # re: hibernate 初包裝(簡單)  回復  更多評論   

          2007-07-05 13:35 by G_G
          非主流 想法
          呵呵 希望大家說出 這樣的不足 和 自己看法
          我發(fā)現(xiàn) 大量的 寫 session 的 開始 和結(jié)束 了

          # re: hibernate 初包裝(簡單)  回復  更多評論   

          2007-07-05 13:36 by G_G
          那 大家 的 hibernate 有沒有好的 方法寫?

          # re: hibernate 初包裝(簡單)  回復  更多評論   

          2007-07-06 21:07 by 軒朗=maninred
          用spring用HibernateSupport類
          主站蜘蛛池模板: 麻栗坡县| 梁河县| 二连浩特市| 乌兰县| 龙海市| 宜兰市| 嘉定区| 沂南县| 荥阳市| 灵宝市| 广元市| 屏东市| 青神县| 枝江市| 永济市| 乌兰察布市| 韶关市| 利津县| 通河县| 正蓝旗| 冕宁县| 新沂市| 曲周县| 宜宾市| 麻阳| 武冈市| 汉沽区| 南川市| 南开区| 扎赉特旗| 沙雅县| 海林市| 阿拉善右旗| 泰宁县| 景德镇市| 顺义区| 白城市| 宜黄县| 遂平县| 绥棱县| 庄河市|