一个JSP分页组件
2013-09-10 10:09
309 查看
import java.util.List; import java.util.Vector; public class Pagination { private int sumPageNumber; private int sumItemNumber; private int pageNumber; private int showItemNumber; private String visitPageURL; private String pageHTML; public List interceptListByStarItemNumber(List itemList) { int startItem = (pageNumber-1)*showItemNumber; List tpItemList = new Vector(); if (itemList == null) { return null; } sumItemNumber=itemList.size(); if(sumItemNumber%showItemNumber==0){ sumPageNumber =sumItemNumber/showItemNumber; }else{ sumPageNumber =sumItemNumber/showItemNumber+1; } for (int i = 0; i < itemList.size(); i++) { // 不要超过截取的最大条数, if ((i) == (startItem + showItemNumber)) { break; } // 当循环到开始条数的时候,将对象添加到新的列表里面。 if ((i) >= startItem) { tpItemList.add(itemList.get(i)); } } return tpItemList; } |
String tableWidth=tWidth;
String visitFirstPageURL="";
String visitNextPageURL="";
String visitPreviousURL="";
String visitEndURL="";
visitPageURL=visitPageURL+"?showItemNumber="+showItemNumber+"&pageNumber=";
if(pageNumber==1){
visitFirstPageURL="[首页] ";
visitPreviousURL="[上一页] ";
}else{
visitFirstPageURL="<a href='"+visitPageURL+"1'>[首页]</a> ";
visitPreviousURL="<A href='"+visitPageURL+(pageNumber-1)+"'>[上一页]</A> ";
}
if(pageNumber==sumPageNumber){
visitNextPageURL="[下一页] ";
visitEndURL="[尾页] ";
}else{
visitNextPageURL="<a href='"+visitPageURL+(pageNumber+1)+"'>[下一页]</a> ";
visitEndURL="<a href='"+visitPageURL+sumPageNumber+"'>[尾页]</a>";
}
StringBuffer sb = new StringBuffer();
sb.append("<table width="+tableWidth);
sb.append("><tr><td align=right>");
sb.append("当前是第["+pageNumber+"]页 ");
sb.append("共["+sumPageNumber+"]页 "+"共["+sumItemNumber+"]条 ");
sb.append(visitFirstPageURL);
sb.append(visitPreviousURL);
sb.append(visitNextPageURL);
sb.append(visitEndURL);
sb.append("</td> </tr></table>");
return sb.toString();
}
public int getPageNumber() {
return pageNumber;
}
public void setPageNumber(int pageNumber) {
this.pageNumber = pageNumber;
}
public int getShowItemNumber() {
return showItemNumber;
}
public void setShowItemNumber(int showItemNumber) {
this.showItemNumber = showItemNumber;
}
public int getSumItemNumber() {
return sumItemNumber;
}
public int getSumPageNumber() {
return sumPageNumber;
}
public String getVisitPageURL() {
return visitPageURL;
}
public void setVisitPageURL(String visitPageURL) {
this.visitPageURL = visitPageURL;
}
public String getPageHTML() {
return pageHTML;
}
}
JSP页面调用:
<%@ page import="page.*"%>
<%@ page import="java.util.*"%>
<%@ page contentType="text/html; charset=GBK" %>
jsp分页组件:
<%
Vector list=new Vector();
for(int i=0;i<100;i++)
list.add(i+" ");
Pagination pagination = null;
String pageNumber = request.getParameter("pageNumber");
int showItemNumber = 5;
if (pageNumber == null) {
pageNumber = "1";
}
String HTML = "";
if (list != null && list.size() > 0) {
pagination = new Pagination();
pagination.setPageNumber(Integer.parseInt(pageNumber));
pagination.setShowItemNumber(showItemNumber);
pagination.setVisitPageURL("Allshetuan.jsp");
list =(Vector) pagination.interceptListByStarItemNumber(list);
for(int i=0;i<list.size();i++)
{
out.print("<br>"+list.get(i));
}
HTML = pagination.buildHTML("600");
out.print(HTML);
}
%>
相关文章推荐
- 一个JSP分页组件
- 一个JSP分页组件
- 一个用JSP实现的分页的类及调用方法
- 从零开始做一个pagination分页组件
- 一个简单的分页例子,采用JSP+oracle编写
- 我整理的一个经典分页程序(JSP的)
- 一个分页组件
- JSP通用分页组件 pager-taglib使用
- vue的一个分页组件的示例代码
- 一个实现分页封装的类文件和jsp文件
- 一个非常简单的分页技术MYSQL+JSP 利用了mysql的LIMIT参数
- 一个通用的 分页组件 (转)
- 修改ASP.NET MVC Ajax分页组件ASP.NET MvcPager一个小Bug并修该样式为自己所用(三)
- 我整理的一个经典分页程序(JSP的)
- 基于vue2.0的一个分页组件
- dwz分页组件中,一个奇怪的翻页问题的解决
- 一个简单的JSP分页代码
- 一个完全独立的、简洁的jquery前端分页组件,用到动态添加页内样式的方法哦。
- Creating a Pager Control for ASP.NET以及Dino Esposito 分页组件的一个 Bug