<%@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對象。