La pagination des données est essentielle en développement. Parce que la quantité de données est trop importante, il faut les traiter. Mais pour la pagination, il existe de nombreuses façons, comme utiliser la limite de l'instruction SQL ou utiliser le plug-in jquery. Mais la logique sous-jacente est essentielle.
Publiez ici le code de l'objet bean et d'une classe auxiliaire. Le projet sur lequel je travaille est un blog personnel, qui peut être considéré comme un site internet personnel.
(Publier uniquement une partie du code logique sous-jacent)
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; } }
Chaque fois que je viens je dois y aller. Appelle-le.
//传入每页显示的页数,总记录数,当前页 Page page=PageUtil.createPage(5, diaryDao.findAllCount(), currentPage);
Ce qui précède représente l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'apprentissage de chacun, et j'espère également que tout le monde s'abonnera au PHP chinois. site web.
Pour plus d'articles liés à l'implémentation simple de la pagination jsp, veuillez faire attention au site Web PHP chinois !