package cn.demo;
import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.criterion.Restrictions;
import cn.itcast.domain.Customer;
import cn.util.HibernateUtil;
/**
* 使用Criteria 对象查询数据
* 1、获得Session对象 开启事务
* 2、通过Session获得Criteria对象
* 3、使用Restrictions的静态方法创建Criterion类提供了一系列用于设定查询条件的静态方法,这些静态方法都返回Criterion实例,每个Criterion实例代表一个查询条件
* 4、向Criteria对象中添加Criterion 查询条件。Criteria的add()方法用于加入查询条件
* 5、执行Criteria的 list() 或 uniqueResult() 获得结果
* @author Administrator
*
*/
public class MyCriteria {
public static void main(String[] args) {
Session session = HibernateUtil.getCurrentSession();
Transaction tx = session.beginTransaction();
// //1、查询所有记录
// Criteria criteria = session.createCriteria(Customer.class);
// List
// System.out.println(list);
// //2、条件查询
// Criteria criteria = session.createCriteria(Customer.class);
// criteria.add(Restrictions.eq("cust_name", "小王"));
// List
// System.out.println(list);
// //3、条件查询
// Criteria criteria = session.createCriteria(Customer.class);
// criteria.add(Restrictions.eq("cust_name","小王"));
// criteria.add(Restrictions.eq("cust_source", "网络推广"));
// List
// System.out.println(list);
//
//4、分页查询
Criteria criteria = session.createCriteria(Customer.class);
//从第三条开始查询记录数从零开始算起 也就是说 输入 3 输出ID为 4
criteria.setFirstResult(3);
//查询三条记录
criteria.setMaxResults(3);
List<Customer> list = criteria.list();
System.out.println(list);
tx.commit();
}
}
手机扫一扫
移动阅读更方便
你可能感兴趣的文章