Hibernate中使用DetchedCriteria
作者:佚名
本文介紹如何在Hibernate中使用DetchedCriteria。在Hibernate 3中新增了org.hibernate.criterion.DetchedCriteria,您可以先建立DetchedCriteria實例,并加入各種查詢條件。
Criteria與Session綁定,其生命周期跟隨著Session結(jié)束而結(jié)束,使用Criteria時進行查詢時,每次都要于執(zhí)行時期動態(tài)建立物件,并加入各種查詢條件,隨著Session的回收,Criteria也跟著回收。
為了能夠重復使用Criteria物件,在Hibernate 3中新增了org.hibernate.criterion.DetchedCriteria,您可以先建立DetchedCriteria實例,并加入各種查詢條件,并于需要查詢時再與Session綁定,獲得一個綁定Session的Criteria物件,例如:
- // 先建立DetchedCriteria物件
- DetachedCriteria detchedCriteria = DetachedCriteria.forClass(User.class);
- // 加入查詢條件
- detchedCriteria.add(Restrictions.ge("age",new Integer(25)));
- Session session = sessionFactory.openSession();
- // 綁定Session并返回一個Criteria實例
- Criteria criteria = detchedCriteria.getExecutableCriteria(session);
- List users = criteria.list();
以上,大致介紹了DetchedCriteria的使用方法。
【編輯推薦】
責任編輯:book05
來源:
百度博客