Hibernate Criteria接口 setProjection方法:设置查询的投影列
发布时间:2020-12-15 02:40:25 所属栏目:Java 来源:网络整理
导读:setProjection 方法用于设置查询的投影列。该方法与 Projections 类结合不仅可以实现简单的投影查询,而且可以实现数据的分组统计。 语法: setProjection(Projection projection) 参数说明: projection:用于指定投影列或分组统计条件。 返回值:Criteria
setProjection 方法用于设置查询的投影列。该方法与 Projections 类结合不仅可以实现简单的投影查询,而且可以实现数据的分组统计。 语法: setProjection(Projection projection) 参数说明:
返回值:Criteria 对象。 示例1应用投影查询,查询数据表中的全部用户 ID,关键代码如下:Criteria criteria = session.createCriteria(UserForm.class); //示例化Criteria对象 criteria.setProjection(Projections.id()); //设置查询列 list = criteria.list(); //执行查询 Iterator it = list.iterator(); //获取查询结果迭代器 while(it.hasNext()){ //循环遍历查询结果 System.out.println(it.next()); } 示例2应用投影查询,查询数据表中的全部用户 ID 和用户名,关键代码如下:Criteria criteria = session.createCriteria(UserForm.class); //示例化Criteria对象 criteria.setProjection(Projections.projectionList() .add(Projections.id()) .add(Projections.property("username")) //查询数据表全部用户ID和用户名 ); List list = criteria.list(); //获取查询结果 Iterator it = list.iterator(); //获取查询结果迭代器 while(it.hasNext()){ //循环遍历迭代器 Object[] o = (Object[])it.next(); System.out.println("ID:"+o[0]+"用户名:"+o[1]); } 示例3获取订单信息表中的合计金额,关键代码如下:Criteria criteria = session.createCriteria(OrderForm.class); //获取Criteria示例 criteria.setProjection(Projections.sum("money")); //设置查询列 double sumMoney = (Double)criteria.uniqueResult(); //获取订单信息表总金额 System.out.println("合计金额:"+sumMoney); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |