SSI框架---实现查询结果分页显示

首先,写个分页查询结果封装类PagerQueryResult,里面设置:当前页码page、每页显示的条目、查询结果条目、查询结果列表、页面总数等。 然后分别在Dao、Service、Action调用即可,具体如下:

1、DAO层

  public List<QuestionTypeVO> getQuestionTypelist(int page,int pageSize) {
  return (List<QuestionTypeVO>)this.getSqlMapClientTemplate().queryForList("questiontype.getQuestionTypelist",(page-1)*pageSize, pageSize);
  
 }

2、Service层注入ItemCount、ResultList

 public PagerQueryResult<QuestionTypeVO> getQuestionTypelist(QuestionTypeVO questiontype, PagerQueryResult<QuestionTypeVO> pagerResult) {
 pagerResult.setItemCount(questiontypeDao.getQuesTypeCount(questiontype));
  pagerResult.setResultList(questiontypeDao.getQuestionTypelist(pagerResult.getPage(), pagerResult.getPageSize()));
  return pagerResult;
 }

3、Action

 public String list(){
  if (this.pagerResult == null) {
   this.pagerResult = new PagerQueryResult<QuestionTypeVO>();
   this.pagerResult.setPage(1);
  }

  this.pagerResult.setPageSize(pageSize);
  this.pagerResult=this.getQuestiontypeService().getQuestionTypelist(questiontype,pagerResult);
  count=this.getQuestiontypeService().getQuesTypeCount(questiontype);
  this.questiontypelist=this.pagerResult.getResultList();
  return SUCCESS;
 }

4、JSP代码

 <!-- 分页结果 -->
  <div class="pager" style="padding-left:120px;">
 <c:if test="${pagerResult.page gt 1}"><a href="list.do?pagerResult.page=${pagerResult.page-1}">上一页</a></c:if>
 第${pagerResult.page }页/共${pagerResult.pageCount }页
   <c:if test="${pagerResult.page lt pagerResult.pageCount}"><a href="list.do?pagerResult.page=${pagerResult.page+1}">下一页</a></c:if>
<!-- 用于跳转页 -->
   <span style="margin-left:6em;">
    跳转到<input type="text" name="pagerResult.page" id="pageInput" style="width:4em"/>页
    <a id="pager" href="list.do?pagerResult.page=${pagerResult.page}" οnclick="check();" style="font-size:12pt;">
   确定
   </a>
    <input id="maxpage" type="hidden" value="${pagerResult.pageCount}"/>
   </span>
 </div>

<script type="text/javascript">
function check(){
 var pageInput=document.getElementById("pageInput").value;
 var maxpage=$("#maxpage").val();
 var href=$("#pager").attr("href");
  if(pageInput<=maxpage){
   var index=href.indexOf("pagerResult.page=");

   var substring=href.substring(0,index);
   substring=substring+"pagerResult.page="+pageInput;
   href=substring;
   $("#pager").attr("href",href);
  }
 
}

</script>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值