首页 > Web开发 > 详细

Hibernate的批量查询——Criteria

时间:2019-11-10 12:15:43      阅读:75      评论:0      收藏:0      [点我收藏+]

1、查询所有的学生信息:

public static void testSel() {
            Session session = HibernateUtils.openSession();
            Transaction transaction = session.beginTransaction();
            Criteria criteria=session.createCriteria(Student.class);
            List<Student>list= criteria.list();
            System.out.println(list);
            transaction.commit();
            session.close();
        }

技术分享图片

 

 2、条件查询:

运算符与对应的英文缩写:

> gt  >=ge  <lt  <=le  ==eq

!=ne  in:in  between and::between

like:like  is not null:isNotNull  

or:or  and:and

(1)eq的运用:

public static void testSel() {
            Session session = HibernateUtils.openSession();
            Transaction transaction = session.beginTransaction();
            Criteria criteria=session.createCriteria(Student.class);
            criteria.add(Restrictions.eq("sex",""));
            List<Student>list= criteria.list();
            System.out.println(list);
            transaction.commit();
            sessio

技术分享图片

 

 (2)like的运用:

public static void testSel() {
            Session session = HibernateUtils.openSession();
            Transaction transaction = session.beginTransaction();
            Criteria criteria=session.createCriteria(Student.class);
            criteria.add(Restrictions.like("sname","许__"));
            List<Student>list= criteria.list();
            System.out.println(list);
            transaction.commit();
            session.close();
        }

技术分享图片

 

 3、分页查询:

需要事先设置起始位置和查询的数量。

public static void testSel() {
            Session session = HibernateUtils.openSession();
            Transaction transaction = session.beginTransaction();
            Criteria criteria=session.createCriteria(Student.class);
            criteria.add(Restrictions.eq("sex",""));
            criteria.setFirstResult(1);
            criteria.setMaxResults(2);
            List<Student>list= criteria.list();
            System.out.println(list);
            transaction.commit();
            session.close();
        }

技术分享图片

4、总记录数的获取:

 public static void testSel() {
            Session session = HibernateUtils.openSession();
            Transaction transaction = session.beginTransaction();
            Criteria criteria=session.createCriteria(Student.class);
            criteria.setProjection(Projections.rowCount());//聚合函数获得总行数
            Long rowNum= (Long) criteria.uniqueResult();
            System.out.println(rowNum);
            List<Student>list= criteria.list();
            System.out.println(list);
            transaction.commit();
            session.close();
        }

技术分享图片

 

 

 

 

Hibernate的批量查询——Criteria

原文:https://www.cnblogs.com/zhai1997/p/11829304.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!