一个JSP分页代码
2017-01-12 12:02
501 查看
package com.page; public class PageUtil { // 每页显示的条数 private int pageSize; // 总共的条数 private int recordCount; // 当前页面 private int currentPage; public PageUtil(int pageSize, int recordCount, int currentPage) { this.pageSize = pageSize; this.recordCount = recordCount; setCurrentPage(currentPage); } // 构造方法 public PageUtil(int pageSize, int recordCount) { this(pageSize, recordCount, 1); } // 总页数 public int getPageCount() { // 总条数/每页显示的条数=总页数 int size = recordCount / pageSize; // 最后一页的条数 int mod = recordCount % pageSize; if (mod != 0) size++; return recordCount == 0 ? 1 : size; } // 包含,起始索引为0 public int getFromIndex() { // System.out.println("from index:"+(currentPage-1) * pageSize); return (currentPage - 1) * pageSize; } // 不包含 public int getToIndex() { // System.out.println("to index:"+Math.min(recordCount, currentPage * // pageSize)); return Math.min(recordCount, currentPage * pageSize); } // 得到当前页 public int getCurrentPage() { return currentPage; } // 设置当前页 public void setCurrentPage(int currentPage) { int validPage = currentPage <= 0 ? 1 : currentPage; validPage = validPage > getPageCount() ? getPageCount() : validPage; this.currentPage = validPage; } // 得到每页显示的条数 public int getPageSize() { return pageSize; } // 设置每页显示的条数 public void setPageSize(int pageSize) { this.pageSize = pageSize; } // 得到总共的条数 public int getRecordCount() { return recordCount; } // 设置总共的条数 public void setRecordCount(int recordCount) { this.recordCount = recordCount; } }
----------------------------------------------------------------------------------------------------------------------------------
下面的代码是放在jsp里面的
<% PublishersDAO dao = PublishersDAO.getInstance(); List records = dao.getModels(); String pageStr = request.getParameter("page"); int currentPage = 1; if (pageStr != null) currentPage = Integer.parseInt(pageStr); PageUtil pUtil = new PageUtil(10, records.size(), currentPage); currentPage = pUtil.getCurrentPage(); %>
---------下面这个是放在有变量的上面-----------------------------------------------------------------------------------------
<% for (int i = pUtil.getFromIndex(); i < pUtil.getToIndex(); i++) { PublisherModel model = (PublisherModel) records.get(i); %> 中间是删除修改之类的代码 <%}%>
----------这个是结尾的--------------------------------------------------------------------------------------------------------
<tr><td width=100% bgcolor="#eeeeee" colspan=4 align="center"> 记录总数<%=pUtil.getRecordCount()%>条 当前页/总页数<%=currentPage%> /<%=pUtil.getPageCount()%>每页显示<%=pUtil.getPageSize()%>条 <a href="publishers.jsp?page=1">首页</a> <a href="publishers.jsp?page=<%=(currentPage - 1)%>">上页</a> <a href="publishers.jsp?page=<%=(currentPage + 1)%>">下页</a> <a href="publishers.jsp?page=<%=pUtil.getPageCount()%>">末页</a> </td></tr>
相关文章推荐
- rxjs5.X系列 —— ErrorHandling/Condition/Mathematical系列 api 笔记
- js手机号批量滚动抽奖实现代码
- js图片轮播手动切换特效
- 原生js实现倒计时功能(多种格式调用)
- JavaScript定义全局对象的方法示例
- JavaScript 打开新链接的两种方式
- js实现类似list、map
- web开发问题总结
- 好用的GsonUtils,Json转任何Bean,Bean转Json字符串
- JavaScript如何截断保留小数点后三位数
- JS动态添加Select选项
- javaScript中关于数组去重的3个方法:
- JS总结篇--JS中常用的Math方法整理
- gruntFile.js
- JS | canvas 绘制多图
- javascript类与继承
- js手机号批量滚动抽奖代码实现
- JavaScript : 浅讲ajax
- JavaScript 简介和嵌入 HTML 页面的方法
- js获取当前日期并格式化(多种格式)