hibernate中的统计函数值的接收技巧

周一接到一项新任务,为原来的项目加统计功能.由于项目用的是SSH架构,hibernate的查询用的不少,但面向对象的统计函数还真没用过.语句好写,接收并在前台页面显示成了一个难题.
注:本人此次的统计主要涉及到两种,一种是直接使用count(XX),另一种是使用group by的分类统计查询.
Hibernate中有参数传递的语句返回值均是用List对象来接收的.对于第一种,由于结果肯定是只有一个,而且是一个整数,所以我就试着在后台将list.get(0)输出,输出结果还真是统计结果中的数值.第二种:list对象中的值可就不一定了,再使用list.get(i)输出的肯定就不是我们想要的数值了,那怎么办呢,我再网上查了,看到本网站上http://www.iteye.com/problems/2362处的文章,是将统计遍历放到PO中,这给我一个思路:即List中存放的仍然是对象,只是对象不再是我们原来常规查询中的PO,那么我们在页面上显示时,是否可以直接利用变量的方式显示呢,于是我在前台页面利用标签进行了如下处理: <c:forEach var="rs" items="${resultList}">
<tr>
<td>${rs[0]}</td>
<td>${rs[1]}</td>
</tr>
</c:forEach>其中resultList是统计结果存放的List对象,rs现在则是统计结果中的每一条记录,而rs[0],rs[1].....则是该条记录下的每一个子项.当然如果统计结果不在页面显示,也可以利用那个朋友据说的遍历放到PO中来解决.而且通过测试本人发现:当我将resultList存储到Session中后,再另一个方法中从Session中取出时(此处指遍历输出),此时再用Integer[]接收报了异常,于是我将Integer[]改成了Object[],结果正常.至于在存放于Session再取出的过程发生了哪些变化,我不太清楚,反正如果大家遇到此问题可以试试换成Object[].
个人感觉:其实许多东西没有头绪时,亲手去试试,也许结果比我们想像的要简单!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值