Heim  >  Artikel  >  php教程  >  Einfache Implementierung von JSP-Paging

Einfache Implementierung von JSP-Paging

高洛峰
高洛峰Original
2016-12-29 15:28:461446Durchsuche

Daten-Paging ist in der Entwicklung unerlässlich, da die Datenmenge zu groß ist und verarbeitet werden muss. Für das Paging gibt es jedoch viele Möglichkeiten, z. B. die Verwendung der SQL-Anweisung „Limit“ oder die Verwendung des JQuery-Plug-Ins. Aber die zugrunde liegende Logik ist alles, was benötigt wird.
Veröffentlichen Sie hier den Code des Bean-Objekts sowie eine Hilfsklasse. Das Projekt, an dem ich arbeite, ist ein persönlicher Blog, der als persönliche Website betrachtet werden kann.

(nur ein Teil des zugrunde liegenden Logikcodes wird gepostet)

Page.java

package cn.edu.ldu.util;
 
public class Page {
 
  private int everyPage;     //每页显示的数量
  private int totalPage;     //总页数
  private int totalCount;     //总数量
  private int currentPage;    //当前页
  private int beginIndex;     //起始页
  private boolean hasPrepage;   //是否有上一页
  private boolean hasNextPage;  //是否有下一页
 
  public Page() {
  }
 
  public Page(int everyPage, int totalPage, int totalCount, int currentPage,int beginIndex, boolean hasPrepage, boolean hasNextPage)
  {
    this.everyPage = everyPage;
    this.totalPage = totalPage;
    this.totalCount = totalCount;
    this.currentPage = currentPage;
    this.beginIndex = beginIndex;
    this.hasPrepage = hasPrepage;
    this.hasNextPage = hasNextPage;
  }
 
  public int getEveryPage() {
    return everyPage;
  }
 
  public void setEveryPage(int everyPage) {
    this.everyPage = everyPage;
  }
 
  public int getTotalPage() {
    return totalPage;
  }
 
  public void setTotalPage(int totalPage) {
    this.totalPage = totalPage;
  }
 
  public int getTotalCount() {
    return totalCount;
  }
 
  public void setTotalCount(int totalCount) {
    this.totalCount = totalCount;
  }
 
  public int getCurrentPage() {
    return currentPage;
  }
 
  public void setCurrentPage(int currentPage) {
    this.currentPage = currentPage;
  }
 
  public int getBeginIndex() {
    return beginIndex;
  }
 
  public void setBeginIndex(int beginIndex) {
    this.beginIndex = beginIndex;
  }
 
  public boolean isHasPrepage() {
    return hasPrepage;
  }
 
  public void setHasPrepage(boolean hasPrepage) {
    this.hasPrepage = hasPrepage;
  }
 
  public boolean isHasNextPage() {
    return hasNextPage;
  }
 
  public void setHasNextPage(boolean hasNextPage) {
    this.hasNextPage = hasNextPage;
  }
 
}

PageUtil.java

package cn.edu.ldu.util;
 
public class PageUtil {
  //创建分页信息对象
  public static Page createPage(int everyPage,int totalCount,int currentPage) {
    everyPage = getEveryPage(everyPage);
    currentPage = getCurrentPage(currentPage);
    int totalPage = getTotalPage(everyPage, totalCount);
    int beginIndex = getBeginIndex(everyPage, currentPage);
    boolean hasPrePage = getHasPrePage(currentPage);
    boolean hasNextPage = getHasNextPage(totalPage, currentPage);
    return new Page(everyPage, totalPage,totalCount, currentPage,
        beginIndex, hasPrePage, hasNextPage);
  }
 
  //获得每页显示记录数
  public static int getEveryPage(int everyPage) {
    return everyPage == 0 ? 10 : everyPage;
  }
 
  //获得当前页
  public static int getCurrentPage(int currentPage) {
    return currentPage == 0 ? 10 : currentPage;
  }
 
  //获得总页数
  public static int getTotalPage(int everyPage,int totalCount) {
    int totalPage=0;
    //要判断每页是否满页,否则页数+1
    if(totalCount!=0 && totalCount%everyPage==0) {
      totalPage=totalCount/everyPage;
    }
    else {
      totalPage=totalCount/everyPage+1;
    }
    return totalPage;
  }
 
  //获得起始位置
  public static int getBeginIndex(int everyPage,int currentPage) {
    return everyPage*(currentPage-1);
  }
 
  //判断是否有上一页
  public static boolean getHasPrePage(int currentPage) {
    return currentPage== 1 ? false : true;
 
  }
 
  //判断是否有下一页
  public static boolean getHasNextPage(int totalPage, int currentPage) {
    return (currentPage == totalPage) || (totalPage == 0) ? false : true;
  }
 
}

Jedes Mal, wenn ich Ich muss einfach gehen. Ruf es einfach an.

//传入每页显示的页数,总记录数,当前页
Page page=PageUtil.createPage(5, diaryDao.findAllCount(), currentPage);

Einfache Implementierung von JSP-Paging

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass er zum Lernen aller beiträgt, und ich hoffe auch, dass jeder PHP-Chinesisch abonniert Webseite.


Weitere Artikel zur einfachen Implementierung von JSP-Paging finden Sie auf der chinesischen PHP-Website!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn