隨筆-7  評論-24  文章-102  trackbacks-0

          [推薦]  hibernate-native sql support http://www.aygfsteel.com/alex0927/articles/194737.html
          1.使用SQLQuery                                                Session.createSQLQuery();
              1.1標(biāo)量查詢                                                  最基本的SQL查詢就是獲得一個(gè)標(biāo)量(數(shù)值)的列表。
              1.2 實(shí)體查詢                                                 通過 addEntity() 讓原生查詢返回實(shí)體對象。
              1.3 處理關(guān)聯(lián)和集合類                                  通過 addJoin() 方法可以讓你將關(guān)聯(lián)或集合連接進(jìn)來。
              1.4 返回多個(gè)實(shí)體
                  1.4.1 別名和屬性引用
              1.5. 返回非受管實(shí)體                                    可以對原生sql 查詢使用ResultTransformer。這會返回不受Hibernate管理的實(shí)體。
              1.6. 處理繼承                
              1.7. 參數(shù)                                                        原生查詢支持位置參數(shù)(? 0)和命名參數(shù)(: varName)

          2.使用命名SQL查詢                                          xml 文件中定義好 HQL 語句,通過 sess.getNamedQuery("persons") 調(diào)用命名注入。
              2.1. 使用return-property來明確地指定字段/別名
              2.2. 使用存儲過程來查詢
              2.2.1. 使用存儲過程的規(guī)則和限制



          方法鏈編程風(fēng)格ist result=session.createCriteria(Customer.class)
              .add(Expression.like("name", "T%")
              .add(Expression.eq("age", newInteger(21))
              .list();


          預(yù)編譯語句Hibernate 中避免拼串, 使用預(yù)編譯語句,
          1).使用順序占位符    .age > ?
               query.setInteger(0,20);
          2).使用引用占位符    .name = :name
               query.setParameter("name","Erica");

           
          Hibernate多表關(guān)聯(lián)查詢的結(jié)果處理http://www.aygfsteel.com/kawaii/archive/2008/06/23/101930.html
          如果我們在Hibernate中需要查詢多個(gè)表的不同字段,有兩種方式獲得結(jié)果:
          1、對各個(gè)字段分別轉(zhuǎn)化成對應(yīng)類型
              List result = q.list();  
              Iterator it = result.iterator(); 
              while (it.hasNext()) { 
              Object[] tuple = (Object[]) it.next(); 
              Members members = (Members) tuple[0]; 
              String className = (String) tuple[1]; 
              }

          2、構(gòu)造自己的復(fù)合類型

          posted on 2008-09-05 22:39 黃小二 閱讀(330) 評論(0)  編輯  收藏 所屬分類: S/S2SH
          主站蜘蛛池模板: 新津县| 肥乡县| 怀来县| 连州市| 盘锦市| 华容县| 中山市| 建德市| 永宁县| 南澳县| 邹城市| 商丘市| 元江| 永福县| 玉田县| 图片| 新蔡县| 滕州市| 当阳市| 张家界市| 连州市| 应城市| 尉氏县| 奉新县| 翁源县| 绍兴县| 民丰县| 甘肃省| 安塞县| 射洪县| 涿鹿县| 四会市| 广灵县| 隆昌县| 太谷县| 江门市| 叶城县| 嘉善县| 张家界市| 贵德县| 扬中市|