Hibernate使用Projections进行聚合操作
2009-12-30 12:45
260 查看
通过Hibernate进行字段中的数据计算,在JDBC中,就使用SQL的sum等方法,而在使用Hibernate中,需要使用Projections的对象.
首先介绍一下Projections:
org.hibernate.criterion.Projections是 Projection 的实例工厂,我们通过调用setProjection()应用Projections对象进行一个查询.
下面开始操作:
同样需要创建Criteria对象,这对象非常重要,几乎完成了Hibernate中大多的查询功能,配合HQL使用,相应厉害.
Java代码
Criteria criteria = session.createCriteria(AccCasherDaySupply.class);
通过Session创建Criteria对象,参数为你要查询的对象类名(这里注意区分大小写).
通过Criteria对象可以使用setProjection的方法,该方法将进行一个Projections的查询.
Java代码
criteria.setProjection(****);
接下来就是进行真正的聚合操作部分了,使用Projections对象插入到****的参数中.
Projects对象具有大多聚合的方法,基本上有:rowCount(),avg(),max(),groupProperty(),alias(),property(),sum()...
以sum()为例,如果需要计算某个字段数据的合,将使用sum()方法:
Java代码
criteria.setProjection(Projections.sum("字段名"));
通过以上代码,criteria将得到相应字段名的合.
最后通过criteria.list()得到Projections查询的最终结果.
首先介绍一下Projections:
org.hibernate.criterion.Projections是 Projection 的实例工厂,我们通过调用setProjection()应用Projections对象进行一个查询.
下面开始操作:
同样需要创建Criteria对象,这对象非常重要,几乎完成了Hibernate中大多的查询功能,配合HQL使用,相应厉害.
Java代码
Criteria criteria = session.createCriteria(AccCasherDaySupply.class);
Criteria criteria = session.createCriteria(AccCasherDaySupply.class);
通过Session创建Criteria对象,参数为你要查询的对象类名(这里注意区分大小写).
通过Criteria对象可以使用setProjection的方法,该方法将进行一个Projections的查询.
Java代码
criteria.setProjection(****);
criteria.setProjection(****);
接下来就是进行真正的聚合操作部分了,使用Projections对象插入到****的参数中.
Projects对象具有大多聚合的方法,基本上有:rowCount(),avg(),max(),groupProperty(),alias(),property(),sum()...
以sum()为例,如果需要计算某个字段数据的合,将使用sum()方法:
Java代码
criteria.setProjection(Projections.sum("字段名"));
criteria.setProjection(Projections.sum("字段名"));
通过以上代码,criteria将得到相应字段名的合.
最后通过criteria.list()得到Projections查询的最终结果.
相关文章推荐
- Hibernate使用Projections进行聚合操作
- Hibernate使用Projections进行聚合操作
- 【hibernate框架】使用Annotation注解进行实体类操作
- hibernate4中使用Session doWork()方法进行jdbc操作(代码)
- 使用hibernate进行CURD操作
- 7.4.2 使用聚合操作进行计算
- 7.4.2 使用聚合操作进行计算
- 使用mongoDB pipeline进行聚合操作
- Hibernate中使用原生的sql语句进行查询操作
- Hibernate中使用HQL进行查询操作
- php7中使用mongoDB的聚合操作对数据进行分组求和统计操作
- Spring中使用HibernateDaoSupport来进行数据库的操作
- elasticsearch聚合操作——本质就是针对搜索后的结果使用桶bucket(允许嵌套)进行group by,统计下分组结果,包括min/max/avg
- 不使用hibernate只使用struts2结构怎么对数据库进行操作
- 使用Struts的Action来通过Hibernate对数据库进行增、删、改、查四项操作
- 使用Hibernate进行持久化操作的步骤及示例
- hibernate使用annotation进行持久化操作(三)
- hibernate使用annotation进行持久化操作(一)
- hibernate使用注解无法进行更新操作的解决方法
- 在Hibernate4中,使用原生JDBC进行批操作