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

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

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



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


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

           
          Hibernate多表關聯查詢的結果處理http://www.aygfsteel.com/kawaii/archive/2008/06/23/101930.html
          如果我們在Hibernate中需要查詢多個表的不同字段,有兩種方式獲得結果:
          1、對各個字段分別轉化成對應類型
              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、構造自己的復合類型

          posted on 2008-09-05 22:39 黃小二 閱讀(330) 評論(0)  編輯  收藏 所屬分類: S/S2SH
          主站蜘蛛池模板: 雷州市| 弥勒县| 永州市| 紫阳县| 莱芜市| 温州市| 平谷区| 濮阳市| 防城港市| 土默特右旗| 四川省| 化隆| 尚志市| 响水县| 黄浦区| 大庆市| 沈丘县| 新昌县| 南汇区| 双鸭山市| 惠东县| 垦利县| 长乐市| 金平| 罗甸县| 揭东县| 庆云县| 陵川县| 正宁县| 慈利县| 禄劝| 丰都县| 和顺县| 安福县| 正宁县| 南京市| 冕宁县| 沿河| 张家川| 鄂伦春自治旗| 晋宁县|