Hibernate HQL sum查询 对象获取 感受 【原创】
有时候切入hibernate代码,运行程序后页面既然只剩下</div 这样,郁闷,日志里也没有什么报错信息。后来发现原来是取值的之后取错格式。以下是些感受和经验:
sum计算的运用:
???? ??????? String hql = "select sum(contribute.IAmount) from Contribute contribute";
??? ??????????? List list = sa.query(hql);????? ?????
????? ?????? System.out.println("AAAAAAAAA::::"+list.get(0));
像这样,其实list的第一个值已经是一个字段累加后的和结果了,可以说不能用对象来看待,因为里面再也没有第二层属性值可以让你取了,直接list.get(0)出值就行了,我就是因为这个页面刷不出来的。
?
查询后直接得出POJO对象
String hql = "select new Contribute(contribute.IName,contribute.IAmount,contribute.ILovemess) from Contribute contribute";
???? ??????????? List list1 = sa.query(hql);
?????? ?????????? for(int i = 0;i<list1.size();i++){?????? ?????
?????? ??????? Contribute contribute = (Contribute)list1.get(i);
?????? ??????? System.out.println("NameNAME!!!!"+contribute.getIName());
?????? ??????? System.out.println("MONEYMONYE!!!!"+contribute.getIAmount());
?????? ??????? System.out.println("LOVELOCE!!!!"+contribute.getILovemess());
像这样,首先在自己的pojo类里面添加多个Contribute(contribute.IName,contribute.IAmount,contribute.ILovemess) 的构造方法,然后直接在HQL语句里面把查询结果new出一个对象就ok了,像这样得出的就是一个pojo的对象,里面的属性值就是数据库里面的,也就是你想要的,这样比单纯的object[] obj 来得更形象化,更容易理解到面向对象的感觉。
?
完毕~
?