墨竹小院
代码改变世界

Jsp分页

2011-07-09 23:59  MzXy  阅读(338)  评论(1)    收藏  举报

Jsp页面

<%@ page language="java"
import="java.util.*,com.mzxy.dao.*,com.mzxy.entity.*,com.mzxy.webtool.*"
pageEncoding
="GBK"%>

<html>
<head>
<title>Jsp分页</title>
</head>
<body>
<%
Dao d
= new Dao();
ArrayList
<Article> a = d.getAll();//获取所有记录
PageBar p = new PageBar();
ArrayList
<Article> num = p.PageingBar(request, a, 5);
%>
<div style="width: 700px;">
<%
for (Article b : num) {
%>
<span><h1><%=b.getTitle()%>---<%=b.getAuther()%></h1> <br>
<%=b.getText()%>------------------<%=b.id%> </span>
<%
}
%>
</div>
<div>
<a href="?id=1">首页</a>
<a href="?id=<%=p.getUppage()%>">上一页</a>
<a href="?id=<%=p.getNextpage()%>">下一页</a>
<a href="?id=<%=p.getLastpage()%>">尾页</a>
</div>
</body>
</html>

Jsp分页封装代码

package com.mzxy.webtool;

import java.util.ArrayList;

import javax.servlet.http.HttpServletRequest;

import com.mzxy.entity.Article;

public class PageBar {
	private int pageNO = 1;// 当前页面
	private int uppage;// 上一页面
	private int nextpage;// 下一页面
	private int lastpage;// 最后的页面

	public int getPageNO() {
		return pageNO;
	}

	public void setPageNO(int object) {
		this.pageNO = object;
	}

	public int getUppage() {
		return uppage;
	}

	public void setUppage(int uppage) {
		this.uppage = uppage;
	}

	public int getNextpage() {
		return nextpage;
	}

	public void setNextpage(int nextpage) {
		this.nextpage = nextpage;
	}

	public int getLastpage() {
		return lastpage;
	}

	public void setLastpage(int lastpage) {
		this.lastpage = lastpage;
	}

	public ArrayList<Article> PageingBar(HttpServletRequest request,
			ArrayList<Article> list, int size) {
		ArrayList<Article> t = new ArrayList<Article>();
		this.setLastpage(list.size() / size + 1);
		String num = request.getParameter("id");
		try {
			this.setPageNO(Integer.parseInt(num));
		} catch (Exception e) {
		}
		this.setUppage(this.getPageNO() <= 1 ? 1 : this.getPageNO() - 1);
		this.setNextpage(this.getPageNO() >= this.getLastpage() ? this
				.getLastpage() : this.getPageNO() + 1);

		for (int i = (this.getPageNO() - 1) * size; i < this.getPageNO() * size; i++) {
			if (i >= list.size()) {
				break;
			}

			t.add(list.get(i));

		}
		return t;
	}

}