Hibernate的学习之路十八(Criteria的查询简单)
2017-12-01 22:10
405 查看
前言
今天继续学习Hibernate的Criteria接口,这个接口更适用于条件的查询。只不过比HQL麻烦。是一个完全面向对象的编程。分析
Criteria查询接口(做条件查询非常合适)1. 具体的查询代码如下 // 1.查询所有记录 /*Criteria criteria = session.createCriteria(Customer.class); List<Customer> list = criteria.list(); System.out.println(list);*/ // 2.条件查询 /*Criteria criteria = session.createCriteria(Customer.class); criteria.add(Restrictions.eq("name", "李健")); List<Customer> list = criteria.list(); System.out.println(list);*/ // 3.条件查询 /*Criteria criteria = session.createCriteria(Customer.class); criteria.add(Restrictions.eq("name", "李健")); criteria.add(Restrictions.eq("age", 38)); List<Customer> list = criteria.list(); System.out.println(list);*/
代码如下:
这个接口是完全的面向对象编程了,之前的HQL方式,还有写sql代码,这个完全不需要。
Criterion 是Hibernate提供的条件查询的对象,想传入条件的使用的工具类Restrictions。
/** * 按条件的查询,写法很麻烦 */ @Test public void run6(){ Session session = HibernateUtils.getSession(); Transaction tr = session.beginTransaction(); // 先获取到Criteria接口 Criteria criteria = session.createCriteria(User.class); // 添加查询的条件 select * from t_user where age > 18 // Criterion 是Hibernate提供的条件查询的对象,想传入条件的使用的工具类Restrictions // Restrictions提供的静态的方法,拼接查询的条件 criteria.add(Restrictions.gt("age", 18)); // 继续添加条件 criteria.add(Restrictions.like("name", "%小%")); // 没有添加条件,查询所有的数据 List<User> list = criteria.list(); System.out.println(list); tr.commit(); session.close(); } /** * Criteria接口:条件查询,非常适合 */ @Test public void run5(){ Session session = HibernateUtils.getSession(); Transaction tr = session.beginTransaction(); // 先获取到Criteria接口 Criteria criteria = session.createCriteria(User.class); // 没有添加条件,查询所有的数据 List<User> list = criteria.list(); System.out.println(list); tr.commit(); session.close(); }
相关文章推荐
- Hibernate的学习之路十八(Criteria的查询简单)
- Hibernate的学习之路十八(Criteria的查询简单)
- Hibernate的学习之路十八(Criteria的查询简单)
- Hibernate的学习之路十八(Criteria的查询简单)
- Hibernate的学习之路十八(Criteria的查询简单)
- Hibernate的学习之路十八(Criteria的查询简单)
- Hibernate的学习之路十八(Criteria的查询简单)
- Hibernate的学习之路十八(Criteria的查询简单)
- Hibernate的学习之路十八(Criteria的查询简单)
- Hibernate的学习之路十八(Criteria的查询简单)
- Hibernate的学习之路十八(Criteria的查询简单)
- Hibernate的学习之路十八(Criteria的查询简单)
- Hibernate的学习之路十八(Criteria的查询简单)
- Hibernate的学习之路十八(Criteria的查询简单)
- Hibernate的学习之路十七(HQL条件查询)
- Hibernate的学习之路二十八(唯一OID和对象导航的查询的方式)
- Hibernate的学习之路三十(HQL的基本查询)、
- Hibernate的学习之路三十三(QBC的基本查询方式)
- Hibernate的学习之路三十四(QBC的聚合函数的查询)
- [原创]java WEB学习笔记93:Hibernate学习之路---Hibernate 缓存介绍,缓存级别,使用二级缓存的情况,二级缓存的架构集合缓存,二级缓存的并发策略,实现步骤,集合缓存,查询缓存,时间戳缓存