谁知道在java中怎么使用hql语句将sum求和结果显示在页面,谁帮我解决了献上20分
这是dao层写的hql语句:publicListshowConsumerDate(Flowf,int[]date1,Stringtime,int[]date2){Obje...
这是dao层写的hql语句:
public List showConsumerDate(Flow f, int[] date1,String time,int[] date2) {
Object[] params=null;
String checkName=" and f.TCardcz.TUser.names= ? ";
String checkCardNo=" and f.TCardcz.cardNo = ? ";
String checkDFName=" and f.TCardcz.TUser.Dfmanager.names = ? ";
String checkYear = " and year(date) between ? and ? ";
String checkMonth = " and month(date) between ? and ? and types!='罚款' and types!='存款' and types!='退款'";
String checkSelect="select sum(dca3) as dca3 ";
String checkDate = " and date between ? and ? ";
String checkGroupBy = " group by year(date),sum(dca3) dca3,sum(dca4) dca4,sum(da3) da3,sum(da4) da4,sum(fca3) fca3,sum(fca4) dca4,sum(fa3) f.fa3,sum(fa4) fa4,sum(sma3) sma3,sum(sma4) sma4,sum(xiaofeimoney) xiaofeimoney ";
if(f.getTCardcz().getTUser().getNames()!=null && !"".equals(name) && f.getTCardcz().getCardNo()!=null && !"".equals(f.getTCardcz().getCardNo()) && f.getTCardcz().getTUser().getDfmanager().getNames()!=null && !"".equals(f.getTCardcz().getTUser().getDfmanager().getNames()) && date1[0]!=0 && date1[1]!=0)
{
if(time.equals("year"))
{
params=new Object[]{f.getTCardcz().getTUser().getNames(),f.getTCardcz().getCardNo(),f.getTCardcz().getTUser().getDfmanager().getNames(),date1[0],date1[1]};
String hql=checkSelect+" from Flow f where 1=1 "+checkName+checkCardNo+checkDFName+checkYear;
return getHibernateTemplate().find(hql,params);
}
}
return null;
}
页面: <tr>
<td class="td"><s:property value="TCardcz.cardNo"/></td>
<td><s:property value="TCardcz.TUser.names"/></td>
<td><s:property value="TCardcz.TUser.Dfmanager.names"/></td>
<td><s:property value="TCardcz.TUser.Dfmanager.address"/></td>
<td><s:property value="#session.dca3"/></td>
<td><s:property value="dca3"/></td>
</tr>
现在 我想将sum求和,显示在页面,而我现在总是传不到页面,而且我发现在dao层用list接到的是Object类型而不是实体类型呢,如果不明白加我1225032122,请大家帮忙啊 真心着急 展开
public List showConsumerDate(Flow f, int[] date1,String time,int[] date2) {
Object[] params=null;
String checkName=" and f.TCardcz.TUser.names= ? ";
String checkCardNo=" and f.TCardcz.cardNo = ? ";
String checkDFName=" and f.TCardcz.TUser.Dfmanager.names = ? ";
String checkYear = " and year(date) between ? and ? ";
String checkMonth = " and month(date) between ? and ? and types!='罚款' and types!='存款' and types!='退款'";
String checkSelect="select sum(dca3) as dca3 ";
String checkDate = " and date between ? and ? ";
String checkGroupBy = " group by year(date),sum(dca3) dca3,sum(dca4) dca4,sum(da3) da3,sum(da4) da4,sum(fca3) fca3,sum(fca4) dca4,sum(fa3) f.fa3,sum(fa4) fa4,sum(sma3) sma3,sum(sma4) sma4,sum(xiaofeimoney) xiaofeimoney ";
if(f.getTCardcz().getTUser().getNames()!=null && !"".equals(name) && f.getTCardcz().getCardNo()!=null && !"".equals(f.getTCardcz().getCardNo()) && f.getTCardcz().getTUser().getDfmanager().getNames()!=null && !"".equals(f.getTCardcz().getTUser().getDfmanager().getNames()) && date1[0]!=0 && date1[1]!=0)
{
if(time.equals("year"))
{
params=new Object[]{f.getTCardcz().getTUser().getNames(),f.getTCardcz().getCardNo(),f.getTCardcz().getTUser().getDfmanager().getNames(),date1[0],date1[1]};
String hql=checkSelect+" from Flow f where 1=1 "+checkName+checkCardNo+checkDFName+checkYear;
return getHibernateTemplate().find(hql,params);
}
}
return null;
}
页面: <tr>
<td class="td"><s:property value="TCardcz.cardNo"/></td>
<td><s:property value="TCardcz.TUser.names"/></td>
<td><s:property value="TCardcz.TUser.Dfmanager.names"/></td>
<td><s:property value="TCardcz.TUser.Dfmanager.address"/></td>
<td><s:property value="#session.dca3"/></td>
<td><s:property value="dca3"/></td>
</tr>
现在 我想将sum求和,显示在页面,而我现在总是传不到页面,而且我发现在dao层用list接到的是Object类型而不是实体类型呢,如果不明白加我1225032122,请大家帮忙啊 真心着急 展开
4个回答
展开全部
for(Object obj : list){
Map map = (HashMap)obj;
Object o =map.get(dca3);
}
应该是这样就可以获得到!
页面可以直接用EL表达式来获取 很简单 引用相关包,然后页面要显示数据的地方${dca3} 就可以显示
你看我写的例子 你可以转行成map或者是你相应的对象的呢!
Map map = (HashMap)obj;
Object o =map.get(dca3);
}
应该是这样就可以获得到!
页面可以直接用EL表达式来获取 很简单 引用相关包,然后页面要显示数据的地方${dca3} 就可以显示
你看我写的例子 你可以转行成map或者是你相应的对象的呢!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你使用一个类封装你要的属性,赋值给这个对象,传到页面上,你要是放Session 就用Session.对象.xxx访问,其他值域照葫芦画瓢
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-09-09
展开全部
写Action、写JSP,用Struts2的标签,很容易呀
如果是表格,用DisplayTag,也很容易、很方便
如果是表格,用DisplayTag,也很容易、很方便
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你好!!
查查addScalar()这个用法吧·······
自己花点时间查查资料,还是很有好处的!
查查addScalar()这个用法吧·······
自己花点时间查查资料,还是很有好处的!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询