2012-05-13 47 views
1

如何通过结果访问休眠组。我试图计算按日期分组的操作次数。我的代码在这里:如何通过结果访问休眠组的结果

Criteria crit = sess().createCriteria(Attendance.class); 
     crit.setProjection(Projections.projectionList() 
       .add(Projections.groupProperty("date"),"adate") 
       .add(Projections.rowCount(),"trueCount")); 
     crit.add(Restrictions.eq("status", true)); 
     List l = crit.list(); 

正确的结果被加载到列表。我如何访问此列表中的结果?

回答

2

它应该返回的Object[]Object[0]对于adate别名(日期)和Object[1]对于trueCount(整数),这样你就可以通过访问返回列表中的结果列表:

List<Object[]> l = (List<Object[]>)crit.list(); 

for(Object[] result: l){ 
    Date adate = (Date)result[0]; 
    Integer trueCount = (Integer)result[1]; 
}