hibernate 数据行数统计 count(*)

Hibernate关于sql中的count(*)数据统计:

①如果使用的是HQL:

直接在HQL中使用count(*)即可获取行数

        Long count = (Long)HibernateUtil.getSession()
                .createQuery("select count(*) from Employee")
                .uniqueResult();
        System.out.println(count);
    

②如果使用的是Criteria方式查询:

使用Projections.rowCount()方法

        Criteria criteria = HibernateUtil.getSession().createCriteria(Employee.class);
        criteria.setProjection(Projections.rowCount());
        Long count = (Long) criteria.uniqueResult();
        System.out.println(count);

其中返回值是Object类型的数值,可以通过强制转换成Long并调用intValue()方法来使用这个int值

你可能感兴趣的:(Java_Hibernate)