package com.page.util;
import java.util.List;
/**
* * * @param <T> */@SuppressWarnings({ "unused" })public class PageUtil<T> {private int page;// 当前页,默认为1
private int pageSize;// 每页数据量 private int maxCount;// 数据总条数 private int maxPage;// 最大页数 private int ago;// 上一页 private int after;// 下一页 private List<T> list;// 封装数据的list集合T为泛型/**
* 得到当前页 * * @return */ public int getPage() { return page; }public void setPage(int page) {
this.page = page; }/**
* 每页数据条数 * * @return */ public int getPageSize() { return pageSize; }public void setPageSize(int pageSize) {
this.pageSize = pageSize; }/**
* 数据总条数 * * @return */ public int getMaxCount() { return maxCount; }public void setMaxCount(int maxCount) {
this.maxCount = maxCount; }/**
* 最大页数 * * @return */ public int getMaxPage() { return maxCount % pageSize > 0 ? (maxCount / pageSize) + 1 : maxCount / pageSize < 1 ? 1 : maxCount / pageSize; }public void setMaxPage(int maxPage) {
this.maxPage = maxPage; }/**
* 上一页 * * @return */ public int getAgo() { return page - 1 < 1 ? 1 : page - 1; }public void setAgo(int ago) {
this.ago = ago; }/**
* 下一页 * * @return */ public int getAfter() { return page + 1 > this.getMaxPage() ? this.getMaxPage() : page + 1; }public void setAfter(int after) {
this.after = after; }/**
* 封装的list集合 * * @return */ public List<T> getList() { return list; }public void setList(List<T> list) {
this.list = list; }/**
* 判断是否是首页 * * @return */ public boolean isFirst() { return (this.getPage() == 1) ? true : false; }/**
* 判断是否是最后一页 * * @return */ public boolean isLast() { return (this.getPage() == this.getMaxPage()) ? true : false; }/**
* 客户端显示的工具条 */ public String getToolBar(String url) { StringBuffer sub = new StringBuffer(); String temp;// 用于判断url中是否存在?
if (url.indexOf("?") == -1) { temp = "?"; } else { temp = "&"; }sub.append("<script type=\"text/javascript\">"
+ "function goPage(page) {" + "var fom = document.forms[0];" + "fom.action = \"" + url + temp + "page=\"+ page;" + "fom.submit();}"); sub.append("</script>"); // sub.append("<form method='post' name='frmPage' action='" + url + // "'> "); sub.append("<p align='right' id='page'>"); sub.append("<span style='font-size: 14px; font-weight: bold;color:red'>");sub.append("共 " + this.getMaxPage()
+ " 页 | 当前第 " + this.page + " 页 | "); // 判断是否首页,如果是首页,首页和上一页有超链接 if (isFirst()) { sub.append("首页 上一页 "); } else { sub.append("<a href=\"javascript:goPage('1')\">首页</a> "); sub.append("<a href=\"javascript:goPage('" + this.getAgo() + "')\">上一页</a> "); }// 判断是否是最后一页
if (isLast()) {
sub.append("下一页 尾页 ");} else {
sub.append("<a href=\"javascript:goPage('" + this.getAfter() + "')\">下一页</a> "); sub.append("<a href=\"javascript:goPage('" + this.getMaxPage() + "')\">尾页</a> ");}
// sub.append(" 共<b>" + this.getMaxCount() + "</b>条记录 ");
sub.append("</span></p>");
// sub.append("</form>"); return sub.toString(); }}