jsp pager tag 精简的例子

本文介绍了一种利用JSP实现分页展示的技术方案。通过简单的代码示例展示了如何配置和使用jsppagertag来实现高效的数据分页功能。此外,还详细解释了分页所需的参数设置及数据传递过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<%@page language="java" contentType="text/html; charset=GBK"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/pager-taglib.tld" prefix="pg" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="display" uri="http://displaytag.sourceforge.net/"%>
<%@ taglib uri="/tld/extremecomponents" prefix="ec" %>
<%@ page import="displaytag.TestList,java.util.List"%>
<link rel="stylesheet" type="text/css" href="<c:url value="/css/mycss.css"/>">
<%--
   这是一个jsp pager tag的例子。
   例子很简单,可见使用jsp pager tag 实现分页的代码量很少。
 
  <pg:pager items="${resultSize}"  //结果总数
       maxPageItems="<%=5%>"   //每页最多数
           maxIndexPages="<%=5%>"  //索引显示数
           isOffset="<%=true%>"    //一般设置true
           url="/jsppager/jsppager.jsp" //点链接执行的action
     export="offset,currentPageNumber=pageNumber" //生成局部变量,一般是偏离量和当前页数
     scope="request"
  >
  这里传给tag的数据包括:
   1,总页数
   2,每页记录数
   3,索引数
   4,点索引执行的action
  传出的数据包括:
   1,偏移量
   2,当前页数
   
   
   <pg:page export="firstItem, lastItem"> //传出当前页的第一个下标,最后一个下标
   此标签表示当前页面的信息
  
   索引页面,可以更换很多。里面主要是tag计算出的偏移量。
  
   为了测试方便,本页面对应的action就是自己。实际项目可以使用action,
  
   action的任务就是
     1,接收记录集偏移量(pager.offset),每页最大记录数。
     2,根据上面两个数据得到一页的记录集合。并下传给页面。
     3,下传记录总数。
  
   页面的任务:
     1,根据下传总数初始化jsp page tag .
     2, 显示下传的集合.(本例用displaytag显示)
--%>
<%
 String foffset = request.getParameter("pager.offset");
 int ioffset= Integer.parseInt(foffset);
 List list = new TestList(40,false); 
 List sublist = list.subList( ioffset,ioffset+5);
 request.setAttribute( "u2bmanpointlist", sublist );
 request.setAttribute("resultSize","40");
%>
<TABLE width=760 border=0 align=center cellPadding=0 cellSpacing=0 >
  <tr>
    <td width="704" height="300" align="right" >

  <pg:pager items="${resultSize}" 
       maxPageItems="<%=5%>"
           maxIndexPages="<%=5%>"
           isOffset="<%=true%>"
           url="/jsppager/jsppager.jsp"
     export="offset,currentPageNumber=pageNumber"
     scope="request"
  >
  <pg:page export="firstItem, lastItem">
   <div class="resultInfo">
    当前页数:<strong>${currentPageNumber}</strong> ,
    本页从第 <strong><%= firstItem %></strong> 条
    到第 <strong> <%= lastItem %></strong>条  
    总记录数 <strong>${resultSize}</strong>条
   </div>
  </pg:page>
 

    <display:table width="100%" height="10" id="myitem" name="u2bmanpointlist" class="report">
 <display:column width="20%" sortable="true" title="名称">${myitem.name}</display:column>
 </display:table>
 
   <jsp:include page="/google.jsp" flush="true"/><br>        
      <%--
      <jsp:include page="/alltheweb.jsp" flush="true"/><br>     
      <jsp:include page="/yahoo.jsp" flush="true"/><br>
      <jsp:include page="/altavista.jsp" flush="true"/><br>
      <jsp:include page="/lycos.jsp" flush="true"/><br>
      <jsp:include page="/texticon.jsp" flush="true"/><br>
   <jsp:include page="/simple.jsp" flush="true"/><br> 
      --%>
      </div></td>
  </pg:pager>
</table>
========================================================================

备注:TestList就是一个List,里面放了一个ListObject对象。

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值