⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pagelist.java

📁 我的文件是一个数据添加页面
💻 JAVA
字号:
package kmd.commo;
/**
 * 数据信息列表
 * <p>Title: </p>
 * <p>Description: </p>
 * <p>Copyright: Copyright (c) 2007</p>
 * <p>Company: 重庆科美达电脑有限公司</p>
 * @author not attributable
 * @version 1.0
 */
import java.util.ArrayList;

public class PageList extends ArrayList {
  /**
   * 当前页数
   */
  public int pageno;
  /**
   * 每页显示记录数
   */
  public int pagesize;
  /**
   * 总页数
   */
  public int pagenum;
  /**
   * 总纪录数
   */
  public int pagesum;
  /**
   * 开始记录数
   */
  public int startPos;
  /**
   * 结束记录数
   */
  public int endPos;
  /**
   * 默认页大小
   */
  public final static int defaultpagesize = 20;
  /**
   * 默认构造符
   */
  public PageList() {}

  public PageList(int pageno, int pagesize) {
    if (pageno < 0) {
      pageno = 0;
    }
    this.pageno = pageno;
    this.pagesize = pagesize;
  }
  /**
   * 计算其它属性
   * @param pagesum 总纪录数
   * @param pageno 当前页
   * @param pagesize 页大小
   */
  public PageList(int pagesum, int pageno, int pagesize) {
    calculate(pagesum, pageno, pagesize);
  }
  /**
   * 计算其它属性
   * @param pagesum 总纪录数
   */
  public void calculate(int pagesum) {
    calculate(pagesum, pageno, pagesize);
  }
  /**
   * 计算其它属性
   * @param pagesum 总纪录数
   * @param pageno 当前页
   * @param pagesize 页大小
   */
  public void calculate(int pagesum, int pageno, int pagesize) {
    if (pagesum < 1) {
      return;
    }
    if (pagesize == 0) {
      return;
    }
    if (pageno < 1) {
      pageno = 1;
    }
    this.pageno = pageno;
    this.pagesize = pagesize;
    this.pagesum = pagesum;

    if (pagesize > 0) {
      if (pagesum % pagesize > 0) {
        pagenum = pagesum / pagesize + 1;
      } else {
        pagenum = pagesum / pagesize;
      }
      if (pageno > pagenum) {
        this.pageno = pagenum;
      }
      if (this.pageno < 1) {
        this.pageno = 1;
      }
      startPos = (this.pageno - 1) * pagesize + 1;
      endPos = this.pageno * pagesize;
    } else {
      startPos = 1;
      endPos = pagesum;
    }
  }
  /**
   * 显示分页标志
   * @param pl 列表
   * @return 结果
   */
  public static String getPage(PageList pl) {
    return getPage(pl, 10, null);
  }


  /**
   * 显示分页标志
   * @param pl 列表
   * @param pagenum 显示的数目
   * @return 结果
   */
  public static String getPage(PageList pl, int pagenum) {
    return getPage(pl, pagenum, null);
  }


  /**
   * 显示分页标志
   * @param pl 列表
   * @param pagenum 显示的数目
   * @param strPage 分页参数
   * @return 结果
   */
  public static String getPage(PageList pl, int pagenum, String strPage) {
    String rValue = null;
    try {
      if (pl != null) {
        StringBuffer sb = new StringBuffer();
        if (strPage != null && !strPage.equals("")) {
          strPage = ",\"" + strPage + "\"";
        } else {
          strPage = "";
        }
        if (pagenum < 1) {
          pagenum = 10;
        }
        sb.append("共计[<font color='#FF0000'>" + pl.pagesum + "</font>]条信息," +
                  pl.pageno + "/" + pl.pagenum + "页。");
        if (pl.pageno > 1) {
          sb.append(" <a href='JavaScript:tunePage(1" + strPage +
                    ")'>|&lt;</a> <a href='JavaScript:tunePage(" +
                    (pl.pageno - 1) + strPage + ")'>&lt;</a>");
        }
        int currentNum = (pl.pageno % pagenum == 0 ? (pl.pageno / pagenum) - 1 :
                          (int) (pl.pageno / pagenum)) * pagenum;
        if (currentNum < 0) {
          currentNum = 0;
        }
        if (pl.pageno > pagenum) {
          sb.append(" <a href='JavaScript:tunePage(" +
                    (currentNum - pagenum + 1) + strPage + ")'>...</a>");
        }
        for (int i = 0; i < pagenum; i++) {
          if ((currentNum + i + 1) > pl.pagenum || pl.pagenum < 2) {
            break;
          }
          sb.append(" <a href='JavaScript:tunePage(" + (currentNum + i + 1) +
                    strPage + ")'>[" +
                    (currentNum + i + 1 == pl.pageno ?
                     "<font color='#FF0000'><b>" + (currentNum + i + 1) +
                     "</b></font>" : (currentNum + i + 1) + "") + "]</a>");
        }

        if (pl.pagenum > (currentNum + pagenum)) {
          sb.append(" <a href='JavaScript:tunePage(" +
                    (currentNum + 1 + pagenum) + strPage + ")'>...</a>");

        }
        if (pl.pageno < pl.pagenum) {
          sb.append(" <a href='JavaScript:tunePage(" + (pl.pageno + 1) +
                    strPage + ")'>&gt;</a> <a href='JavaScript:tunePage(" +
                    pl.pagenum + strPage + ")'>&gt;|</a>");
        }
        rValue = sb.toString();
        sb = null;
      } else {
        rValue = "";
      }
    } catch (Exception e) {
      rValue = "";
    }
    pl = null;
    return rValue;
  }
  /**
   * 生成分页标志
   * @param pl PageList
   * @param pagenum int
   * @param strPage String
   * @param param String
   * @return String
   */
  public static String getPage(PageList pl, int pagenum, String strPage,
                               String param) {
    String rValue = null;
    try {
      if (pl != null) {
        StringBuffer sb = new StringBuffer();
        if (strPage != null && !strPage.equals("")) {
          strPage = ",\"" + strPage + "\"";
        } else {
          strPage = "";
        }
        if (pagenum < 1) {
          pagenum = 10;
        }
        sb.append("共计[<font color='#FF0000'>" + pl.pagesum + "</font>]条信息," +
                  pl.pageno + "/" + pl.pagenum + "页。");
        if (pl.pageno > 1) {
          sb.append(" <a href='" + param + "&pageNo=1" + strPage +
                    "'>|&lt;</a> <a href='"
                    + param + "&pageNo=" + (pl.pageno - 1) + strPage +
                    "'>&lt;</a>");
        }
        int currentNum = (pl.pageno % pagenum == 0 ? (pl.pageno / pagenum) - 1 :
                          (int) (pl.pageno / pagenum)) * pagenum;
        if (currentNum < 0) {
          currentNum = 0;
        }
        if (pl.pageno > pagenum) {
          sb.append(" <a href='" + param + "&pageNo=" +
                    (currentNum - pagenum + 1) + strPage + "'>...</a>");
        }
        for (int i = 0; i < pagenum; i++) {
          if ((currentNum + i + 1) > pl.pagenum || pl.pagenum < 2) {
            break;
          }
          sb.append(" <a href='" + param + "&pageNo=" + (currentNum + i + 1) +
                    strPage + "'>[" +
                    (currentNum + i + 1 == pl.pageno ?
                     "<font color='#FF0000'><b>" + (currentNum + i + 1) +
                     "</b></font>" : (currentNum + i + 1) + "") + "]</a>");
        }

        if (pl.pagenum > (currentNum + pagenum)) {
          sb.append(" <a href='" + param + "&pageNo=" +
                    (currentNum + 1 + pagenum) + strPage + "'>...</a>");

        }
        if (pl.pageno < pl.pagenum) {
          sb.append(" <a href='" + param + "&pageNo=" + (pl.pageno + 1) +
                    strPage + "'>&gt;</a> <a href='" + param + "&pageNo=" +
                    pl.pagenum + strPage + "'>&gt;|</a>");
        }
        rValue = sb.toString();
        sb = null;
      } else {
        rValue = "";
      }
    } catch (Exception e) {
      rValue = "";
    }
    pl = null;
    return rValue;
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -