隨筆-21  評論-29  文章-0  trackbacks-0

          Criteria
              Criteria是一種比HQL更面向對象的查詢方式。Criteria的創建方式:
                Criteria  crit = session.createCriteria(DomainClass.class);
                簡單屬性條件如: criteria.add(Restrictions.eq(propertyName,value));
                                                  criteria.add(Restrictions.eqProperty(propertyName,otherPropertyName));

          新建一Cri類來測試Criteria查詢

          package cn.itcast.hibernate;

          import java.util.Date;
          import java.util.List;

          import org.hibernate.Criteria;
          import org.hibernate.Session;
          import org.hibernate.criterion.Restrictions;

          import cn.itcast.hibernate.domain.User;

          public class Cri {

              
          public static void main(String[] args) {
                  cri(
          "name");

              }

              
          static void cri(String name){
              Session s 
          = null ;
              
          try{
                  s 
          = HibernateUtil.getSession();
                  Criteria c 
          = s.createCriteria(User.class );//查詢User對象
                  c.add(Restrictions.eq("name",name)); //不是查詢全部,加限制為name屬性值等于name的
                  c.add(Restrictions.lt("birthday",new Date()));//可同時加入多個查詢條件,此處要求出生日期小于當前日期
                  
                  c.setFirstResult(
          0); //分頁查詢
                  c.setMaxResults(10); 
                  
                  List
          <User> list = c.list();
                  User u 
          = (User)c.uniqueResult(); 
                  System.out.print(u);
                  
          for(User user : list){
                      System.out.println(user.getName());
                  }

              }
          finally {
                  
          if(s !=null)
                      s.close();
                        }

              }

          }
             


          官方還是推薦使用HQL查詢,因為HQL更強大一些。個人覺得Criteria比較容易理解

          posted on 2009-05-04 16:32 特立獨行 閱讀(355) 評論(0)  編輯  收藏 所屬分類: Hibernate框架
          主站蜘蛛池模板: 江城| 隆德县| 萨迦县| 武冈市| 县级市| 聊城市| 鄂尔多斯市| 阿勒泰市| 高淳县| 鲁甸县| 天气| 额济纳旗| 建瓯市| 尉氏县| 奉新县| 清徐县| 临汾市| 崇文区| 托克逊县| 阿克陶县| 酒泉市| 德保县| 龙井市| 莫力| 临颍县| 霍林郭勒市| 平山县| 元阳县| 阿鲁科尔沁旗| 平安县| 邵武市| 常宁市| 安溪县| 阳江市| 海淀区| 天气| 右玉县| 宝丰县| 方城县| 郯城县| 濉溪县|