Hibernate无语句面向对象查询(Criteria)
一、基本查询。
1、使用Session对象创建一个Criteria实例。
Criteria criteria = session.createCriteria(Customer.class); (查询所有的Customer对象)
2、调用Criteria对象中的查询方法进行查询操作。
List<Customer> list = criteria.list();
二、条件查询(同上)。
1、使用Criteria对象添加查询条件。
criteria.add(Restrictions.eq("cust_id", 1l)); (添加查询参数,查询cust_id为1的查询对象)
查询条件:
(1)> : gt
(2)>=: ge
(3)< : lt
(4)<= : le
(5)==: eq
(6)!= : ne
(7)in : in
(8)between and: between
(9)like: like
(10)is not null: isNotNull
(11)is null: isNull
(12)or: or
(13)and: and
2、调用Criteria对象中的查询方法进行查询操作。、
三、分页查询(同上)。
1、使用Criteria对象设置分页查询的条件。
criteria.setFirstResult(1);
criteria.setMaxResult(5);
2、执行查询操作。
四、排序查询(同上)。
1、调用Criteria对象的addOrder方法并传入参数。
criteria.addOrder(Order.asc("cust_id")); (按表字段cust_id进行排序)。
2、调用criteria对象的查询方法进行查询操作。
五、统计查询(同上)。
1、调用criteria对象的setProjection方法,并传入条件参数。
criteria.setProjection(Projections.rowCount());
2、调用查询方法进行查询操作。