日期:2014-05-19  浏览次数:20656 次

在线等,ssh的分页查询jsp页面到底怎么写才能显示出查询结果

用的就是网上很多的ssh架构的查询分页,在action中已经可以正确的得到pageBean,代码如下

public String execute() throws Exception
{
listAccount = new ArrayList<Account>();
HttpServletRequest request = ServletActionContext.getRequest();
String hql = "";
String name="";
// 分页的pageBean,参数pageSize表示每页显示记录数,page为当前页
StringBuffer sb = new StringBuffer("FROM Account ");
hql=sb.toString();  
this.pageBean = userModualService.queryForPage(6, page,hql); //这里pageBean已经可以正确得到了
  setPageBean(pageBean);
listAccount =this. pageBean.getList();
//System.out.print(listAccount.get(4).getXm());
return SUCCESS;
}

jsp页面的相关代码,我就是不知道这里该怎么写才能显示出查询结果,点击查询按钮后,控制台不报错,页面也没有数据显示。
<s:form name="UserQuery" id="UserQuery" action="/AccountList.action">
<table> 
<tr>
<td><s:submit value="查询" formId="UserQuery" theme="ajax"></s:submit></td>
  </tr>
  </table>
  <s:iterator value="pageBean">
  <tr>
  <td>
  <s:property value="xm"/>  
  <s:property value="ac"/>
  <s:property value="lx"/> 这个是我需要显示的三个字段
  </td>
  <td><a href="../../AccountList.action?id=<s:property value="id"/>">修改</a>
  <a href="deleteArticle.action?id=<s:property value="id"/>" onclick="return confirm('确实要删除吗?')"/>删除</a></td>
  </tr>

  共<s:property value="pageBean.allRow"/>条记录
  共<s:property value="pageBean.totalPage"/>页
  当前第<s:property value="pageBean.currentPage"/>页<br/>
  <s:if test="%{pageBean.currentPage == 1}">
  第一页 上一页
  </s:if>  
  <s:else>
  <a href="../../AccountList.action?page=1">第一页</a>
  <a href="../../AccountList.action?page=<s:property value="%{pageBean.currentPage-1}"/> ">上一页</a>
  </s:else>  
  <s:if test="%{pageBean.currentPage != pageBean.totalPage}">
  <a href="../../AccountList.action?page=<s:property value="%{pageBean.currentPage+1}"/> ">下一页</a>
  <a href="../../AccountList.action?page=<s:property value="pageBean.totalPage"/> ">最后一页</a>
  </s:if>
  <s:else>
  下一页 最后一页
  </s:else>
  </s:iterator>
</s:form>

------解决方案--------------------
建议使用pagertaglib分页,
参见:pagertaglib分页