java类的代码:
**************************************************************************
package web.tool;
import java.util.ArrayList;
public class PageBean {
private ArrayList list = new ArrayList();
private int prePage;
private int nextPage;
private int totalPage;
private int currPage;
public ArrayList getList() {
return list;
}
public void setList(ArrayList list) {
this.list = list;
}
public int getPrePage() {
return prePage;
}
public void setPrePage(int prePage) {
this.prePage = prePage;
}
public int getNextPage() {
return nextPage;
}
public void setNextPage(int nextPage) {
this.nextPage = nextPage;
}
public int getTotalPage() {
return totalPage;
}
public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
}
public PageBean(ArrayList list,String pageNOStr, int countPerPage) {
int pageNO;
try {
pageNO = Integer.parseInt(pageNOStr);
}catch(Exception ex) {
pageNO = 1;
}
pageNO = pageNO < 1 ? 1 : pageNO;
int totalCount = list.size();
int totalPage;
if(totalCount == 0) {
totalPage = 1;
}else {
totalPage =totalCount % countPerPage == 0 ? totalCount/countPerPage : totalCount/countPerPage + 1;
}
pageNO = pageNO > totalPage ? 1 : pageNO;
this.currPage = pageNO;
this.prePage = pageNO == 1 ? 1 : pageNO - 1;
this.nextPage = pageNO == totalPage ? totalPage : pageNO + 1;
this.totalPage = totalPage;
int count = 0;
for(int i = (pageNO - 1)*countPerPage; i < list.size(); i++) {
if(count==countPerPage){
break;
}
this.list.add(list.get(i));
count++;
}
}
public int getCurrPage() {
return currPage;
}
public void setCurrPage(int currPage) {
this.currPage = currPage;
}
}
**************************************************************************
jsp页面的代码:
**************************************************************************
<%@ page language="java" import="java.util.*,entity.*,biz.*,web.tool.*" pageEncoding="GBK"%>
<%
MessageBiz msgBiz = new MessageBiz();
ArrayList<Message> msgs = msgBiz.getAllMessages();
PageBean pageBean =
new PageBean(msgs,request.getParameter("pageNO"),3); // 3代表每页显示几条数据,只改这个
msgs = pageBean.getList();
%>
<html>
<head>
<title>jsp动态分页技术</title>
</head>
<div>
<%for(Message m : msgs) { %>
<%}%>
</div>
<body>
<div class="paging">
<a href="/msg/index.jsp?pageNO=<%=pageBean.getPrePage() %>" >上一页</a>
<a href="/msg/index.jsp?pageNO=<%=pageBean.getNextPage() %>" >下一页</a>
<button onClick="location.href='/msg/index.jsp?pageNO=<%=pageBean.getPrePage() %>';">上一页</button>
<button onClick="location.href='/msg/index.jsp?pageNO=<%=pageBean.getNextPage() %>';">下一页</button>
<%=pageBean.getCurrPage() %> / <%=pageBean.getTotalPage() %>
</div>
</body>
</html>