hibernate --Criteria条件查询

看了几个实例。记点东东。

criteria条件查询 (criteria=‘标准’)。大概就是标准条件查询的意思。它的工作流程是由session产生一个实例→然后对这个实例进行‘条件设置’,想设什么条件就设什么条件→session销毁时,它也就销毁了。为了不与session绑定,且能够重复使用Criteria对象,从而在hibernate3中新增了DetchedCriteria。它大概的流程就是先建立这种对象,并加入各种查询查询条件,需要的时候再与session绑定。。。感觉唯一的区别就是后者不是由session产生的而已。

//简单使用
Criteriacriteria=session.createCriteria(User.class);
Listusers=criteria.list();
//这样便把A的所有记录都查出来了


//
criteria.add(Restrictions.gt("age",newInteger(20));
List users=criteria.list();


//Restrictions还有很多的函数,具体使用再查咯。


/*
其他的功能:支持sql语句设置。
1.排序:criteria.addOrder(Order.asc("age"));
2.指定范围查询criteria.setFirstResult(2);//起始位置
criteria.setMaxResults(8);//最大记录数量
3.统计,分组:
ProjectionListp=Projection.projectionList();
p.add(Projection.groupProperty("age");
p.add(Projection.rowCount());
criteria.setProjecttion(p);
*/

大概就是对criteria进行各种各样的设置,然后再执行list()方法。

相关推荐