---Hibernate查询:
HQL查询-链接:http://www.cnblogs.com/shiyangxt/archive/2009/01/13/1375151.html
hql语句-链接:http://blog.csdn.net/getchance/article/details/8019624
hql语句-链接:http://blog.csdn.net/v123411739/article/details/28644007
this.getHibernateTemplate().*方法-链接:http://www.blogjava.net/jumliang/archive/2009/03/10/258743.html
---getSession().createQuery();和getHibernateTemplate().find();区别-链接:
http://www.cnblogs.com/yangy608/archive/2012/04/26/2471787.html
---条件查询:Criteria,Restrictions
Criteria-Restrictions-链接:http://blog.csdn.net/itmyhome1990/article/details/8797250
---投影查询:
Projection-链接:http://blog.csdn.net/yalove/article/details/6644228
Projections-链接:http://www.2cto.com/kf/201207/139315.html
Hibernate的Projections工厂类包含了以下几个常用的统计函数:
① avg(String propertyName):计算属性字段的平均值。
② count(String propertyName):统计一个属性在结果中出现的次数。
③ countDistinct(String propertyName):统计属性包含的不重复值的数量。
④ max(String propertyName):计算属性值的最大值。
⑤ min(String propertyName):计算属性值的最小值。
⑥ sum(String propertyName):计算属性值的总和。
ProjectionList proList = Projections.projectionList(); proList.add(Projections.rowCount()); proList.add(Projections.max("id")); proList.add(Projections.sum("id")); crit.setProjection(proList); List results = crit.list(); Object[] arr = (Object[])results.get(0); for(Object ob : arr){ System.out.println(ob.toString()); }
Criteria crit = session.createCriteria(User.class); crit.setProjection(Projections.rowCount()); crit.setProjection(Projections.groupProperty("name")); List results = crit.list();
ProjectionList proList = Projections.projectionList(); proList.add(Projections.distinct(Projections.property("module"))); criteria.setProjection(proList); criteria.addOrder(Order.asc("orderSign")); list = criteria.list();