Struts+Hibernate分页

先记录一下,有时间整理


<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" style="font-size:12px; line-height:25px">
<tr bgcolor="#8CC864" >
<td width="61" align="center" bgcolor="#8CC864" class="td-right" >序号</td>
<td width="270" align="center" class="td-right" >排污单位名称</td>
<td width="228" align="center" class="td-right" >存在问题及分析</td>
<td width="196" align="center" class="td-right" >处理及落实情况</td>
</tr>
<c:choose>
<c:when test="${not empty list}">
<c:forEach var="bean" items="${list}" varStatus="status">
<tr bgcolor="#cccccc">
<td align="center" bgcolor="#cccccc" class="td-left">${status.count}</td>
<td align="left" class="td-left" >${bean.dwmc }</td>
<td align="left" bgcolor="#cccccc" class="td-left" >${bean.czwtjfx }</td>
<td align="center" bgcolor="#cccccc" class="td-left" >${bean.cljlsqk }</td>
</tr>
</c:forEach>
</c:when>
<c:otherwise>
<tr bgcolor="#cccccc">
<td colspan="4" align="center" bgcolor="#cccccc" class="td-left">暂无数据</td>
</tr>
</c:otherwise>
</c:choose>



<tr bgcolor="#cccccc">
<td bgcolor="#8CC864" colspan="4" align="center">第${pageNo }页 共${pageCount }页
<a href="<%=path %>/jkqk.do?method=queryAll&pageNo=1">首页</a>
<a href="<%=path %>/jkqk.do?method=queryAll&pageNo=${pageNo-1 }">上一页</a>
<a href="<%=path %>/jkqk.do?method=queryAll&pageNo=${pageNo+1 }">下一页</a>
<a href="<%=path %>/jkqk.do?method=queryAll&pageNo=${pageCount }">尾页</a>
</td>
</tr>
</table>

应该单写一个分页类里
//默认每页显示10条记录
public static final int pageSize = 10;

public ActionForward queryAll(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response){
String dwmc = Common.nullToString(request.getParameter("dwmc"));
String whrq = Common.nullToString(request.getParameter("whrq"));
//总记录数
int dataCount = dao.getDataCount();
//总页数
int pageCount = dao.getPageCount(dataCount, pageSize);
//第一次登陆,显示第一页
int pageNo = 1;
String pageNoStr = request.getParameter("pageNo");
if(pageNoStr == null || "".equals(pageNoStr.trim())){
pageNo = 1;
}
try {
pageNo = Integer.parseInt(pageNoStr);
} catch (NumberFormatException e) {
pageNo = 1;
}
if(pageNo > pageCount){
pageNo = pageCount;
}else if(pageNo < 1){
pageNo = 1;
}

request.setAttribute("pageCount", pageCount);
request.setAttribute("pageNo", pageNo);
request.setAttribute("list", dao.queryAll(dwmc, whrq, pageNo, pageSize));
return mapping.findForward("queryAll");
}


HQL需整理一下
public List<MonitorOperationrecord> queryAll(String dwmc, String whrq,
int pageNo, int pageSize) {
String hql = "";
List list = new ArrayList();
if(whrq != null && !"".equals(whrq)){
hql = "From MonitorOperationrecord m where 1=1 and m.dwmc like ? and m.whrq = to_date('"+whrq+"','yyyy-MM-dd') order by m.id desc";
list = c.getSession().createQuery(hql)
.setParameter(0, "%"+dwmc+"%")
.setFirstResult(pageNo)
.setMaxResults(pageSize)
.list();
}else{
hql = "From MonitorOperationrecord m where 1=1 and m.dwmc like ? order by m.id desc";
list = c.getSession().createQuery(hql)
.setParameter(0, "%"+dwmc+"%")
.setFirstResult(pageNo)
.setMaxResults(pageSize)
.list();
}

return list;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值