js部分
/*************************************************************** * 点击 首页或上一页 时判断是否能够执行,如果已经是 首页,就提示"已经是首页!" * 参数: nowPage: 当前的页面 * 返回: true : 还不是第一页,可以跳转到 首页 * false: 已经是第一页,不需要跳转到 首页 *****************************************************************/ function onClickPrevPage(nowPage){ var k_now_page = parseInt(nowPage,10); if( k_now_page <= 1 ){ alert("已经是首页!"); return false; }else{ return true; } } /*************************************************************** * 点击 尾页或下一页 时判断是否能够执行,如果已经是 尾页,就提示"已经是最后一页!" * 参数: nowPage: 当前的页面 * 参数: maxPage: 最大的页面 * 返回: true : 还不是最后一页,可以跳转到 尾页 * false: 已经是最后一页,不需要跳转到 尾页 *****************************************************************/ function onClickNextPage(nowPage,maxPage){ var k_now_page = parseInt(nowPage,10); var j_max_page = parseInt(maxPage,10); if(k_now_page >= j_max_page){ alert("已经是最后一页!"); return false; }else{ return true; } } /*************************************************************** * 点击 跳转 时判断是否能够执行 * 参数: goPage: 要到的页面 * 参数: nowPage: 当前的页面 * 参数: maxPage: 最大的页面 * 返回: true : 能够执行 * false: 不能够执行 *****************************************************************/ function onClickGoPage(goPage,nowPage,maxPage){ if( !isPInt(goPage) ){ alert("请输入有效的页数!"); return false; } var i_go_page = parseInt(goPage,10); var k_now_page = parseInt(nowPage,10); var j_max_page = parseInt(maxPage,10); if( i_go_page <= 0 ){ alert("请输入有效的页数!"); return false; } //==点击跳转 if( i_go_page == k_now_page){ alert("您正在浏览第 "+ i_go_page +" 页!"); return false; } //==点击跳转 if( i_go_page < 1 || i_go_page > j_max_page ){ alert("可浏览的页数范围为 1 ~ "+ j_max_page +" 页!请输入有效的页数!"); return false; } return true; } /*************************************************************** * 判断用户要浏览的是否就是当前页, 是否是 第一页和最后一页 * 如果已经是 尾页,就提示"已经是最后一页!" * 如果已经是 首页,就提示"已经是首页!" * 参数: goPage: 要浏览的页面 * 参数: nowPage: 当前的页面 * 参数: maxPage: 最大的页面 * 参数: clickFlag: 操作动作的标记,1 = 首页 , 2 = 上一页 , 3 = 下一页 , 4 = 尾页 , 5 = 跳转 * 返回: true : 可以访问要浏览的页面 * false: 要浏览的页面就是当前页或已经是第一页或最后一页 *****************************************************************/ function checkGoPage(goPage,nowPage,maxPage,clickFlag){ if( !isPInt(goPage) ){ alert("请输入有效的页数!"); return false; } var i_go_page = parseInt(goPage,10); var k_now_page = parseInt(nowPage,10); var j_max_page = parseInt(maxPage,10); if( j_max_page == 0){ alert("没有可以显示的记录!"); return false; } /** * 判断是否正整数 * @str 要判断的数据 */ function isPInt(str) { var g = /^[1-9]*[1-9][0-9]*$/; return g.test(str); } /* if( j_max_page == 1){ alert("显示记录只有 1 页。您正在浏览第 1 页!"); return false; } */ if(clickFlag == 1 || clickFlag == 2){ if(!onClickPrevPage(nowPage)) return false; } if(clickFlag == 3 || clickFlag == 4){ if(!onClickNextPage(nowPage,maxPage)) return false; } if(clickFlag == 5){ if(!onClickGoPage(goPage,nowPage,maxPage)) return false; } return true; }
html部分
<tr class="TableRowEven"> <td height="19" colspan="9" align="right" valign="top"> 共${pager.totalCount }条 第${pager.currentPage}/${pager.totalPage}页 <a href="#" onclick="javascrpit:gotopage(1,${pager.currentPage},${pager.totalPage},1);">首页</a> <a href="#" onclick="javascrpit:gotopage(${pager.prePage},${pager.currentPage},${pager.totalPage},2);">上页</a> <a href="#" onclick="javascrpit:gotopage(${pager.nextPage},${pager.currentPage},${pager.totalPage},3);">下页</a> <a href="#" onclick="javascrpit:gotopage(${pager.totalPage},${pager.currentPage},${pager.totalPage},4);">尾页</a> <a href="#" onclick="javascrpit:gotopage(theForm.pageno.value,${pager.currentPage},${pager.totalPage},5);">跳转</a> <input type="text" id="pageNo" name="pageNo" size="3" >页 <input type="button" id="search" name="search" value="查询" onclick="javascript:pageSearch('${pager.totalPage}');"/> </td> </tr>
向后台传参部分
function gotopage(goPage,nowPage,totalPage,flag){ if(checkGoPage(goPage,nowPage,totalPage,flag)){ var url = '${ctx}/system/staff?currentPage='+goPage; window.location.href = url; } } function pageSearch(totalPage){ var pageNo = $("#pageNo").val(); if(!common.isPInt(pageNo)){ alert("请输入数字!"); return false; } if(pageNo > totalPage){ alert("最大页"+totalPage+"页"); return false; } var url = '${ctx}/system/staff?currentPage='+pageNo; window.location.href = url; }
Pager类
public class PagerBean implements java.io.Serializable { private static final long serialVersionUID = 2981940569512052481L; private int totalPage; //总页数 private int totalCount; //总记录数 private int currentPage; //当前页 private int pageSize; //每页的数量 private int firstPage; //首页 private int prePage; //上一页 private int nextPage; //下一页 private int lastPage; //尾页 private int startPageNumber; //查询起始数 private int endPageNumber; //查询结束数 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 getPageSize() { return pageSize; } public void setPageSize(int pageSize) { this.pageSize = pageSize; } public int getFirstPage() { return firstPage; } public void setFirstPage(int firstPage) { this.firstPage = firstPage; } public int getPrePage() { return prePage; } public void setPrePage(int prePage) { this.prePage = prePage; } public int getNextPage() { return nextPage; } public void setNextPage(int nextPage) { this.nextPage = nextPage; } public int getLastPage() { return lastPage; } public void setLastPage(int lastPage) { this.lastPage = lastPage; } public int getStartPageNumber() { return startPageNumber; } public void setStartPageNumber(int startPageNumber) { this.startPageNumber = startPageNumber; } public int getEndPageNumber() { return endPageNumber; } public void setEndPageNumber(int endPageNumber) { this.endPageNumber = endPageNumber; } /** * 分页处理 * @param currentPage 当前页 * @param pageSize 每页的数量 * @param totalCount 总记录数 */ public void setPageInfo(int currentPage, int pageSize, int totalCount){ this.currentPage = currentPage; this.pageSize = pageSize; this.totalCount = totalCount; if(currentPage < 1){ this.currentPage = 1; } this.totalPage = (this.totalCount + pageSize - 1)/pageSize; this.firstPage =1; this.lastPage = totalPage; if(this.currentPage > 1){ this.prePage = this.currentPage - 1; }else{ this.prePage = 1; } if(this.currentPage < totalPage){ this.nextPage = this.currentPage + 1; }else{ this.nextPage = totalPage; } this.startPageNumber = (this.currentPage-1)*this.pageSize; this.endPageNumber = (this.currentPage-1)*this.pageSize+this.pageSize; }
java处理分页部分
int currentPage = request.getParameter("currentPage") == null ? 1 : Integer.parseInt(request.getParameter("currentPage")); GlobalInfoBean global = (GlobalInfoBean)session.getAttribute("global"); Integer pageSize = global.getPageRecode(); if(pageSize == null){ pageSize = 20; } int totalCount = systemService.getStaffBeanListCount(); PagerBean pager = new PagerBean(); pager.setPageInfo(currentPage, pageSize, totalCount); List<LoginBean> staffBeanList = systemService.getStaffBeanList(pager); request.setAttribute("pager", pager);
本文代码参考:http://jaychaoqun.iteye.com/blog/393721
相关推荐
以下是如何利用假分页实现分页的一些建议: 1. **前端处理**:前端需要维护一个状态,包括当前页码、每页显示的条目数等。当用户触发翻页操作时,前端根据这些状态构建请求参数,发送HTTP请求到服务器。 2. **动态...
本篇文章将深入探讨“简单web分页实现”的概念、原理以及实现方法。 首先,我们要理解分页的基本原理。分页通常涉及到两个主要方面:前端显示和后端数据处理。前端负责展示页面上的导航元素(如页码),并根据用户...
标题中的“通用分页实现及其OO设计探讨(2)”表明我们将会讨论的是关于软件开发中的一个常见问题,即如何在应用程序中实现分页功能,并且是基于面向对象(Object-Oriented, OO)的设计思想。这通常涉及到数据库查询、...
Struts2.0 是一个流行的Java Web开发框架,它提供了一种组织和控制MVC(Model-...同时,随着技术的发展,现代的Web应用可能更倾向于使用ORM框架(如Hibernate)和前端分页库(如jQuery DataTables)来简化分页实现。
存储过程分页实现实例源码 源码描述: Filename: PeterPageList * Description: 主要运用sql存储过程进行分页实现,在进行分页实现,需要注意一下事项, * 在项目的根目录下面有一个db文件夹,请认真阅读,里面包含...
本文将深入探讨JSP(JavaServer Pages)中的分页实现策略,以帮助开发者更好地理解和应用这一技术。 一、基础概念 1. JSP:JavaServer Pages,是Java的一种动态网页技术,允许在服务器端生成HTML、XML或其他格式的...
MyBatis自动分页实现 MyBatis 是一个流行的持久层框架,它提供了强大的数据访问功能。但是,在实际应用中,分页问题经常困扰开发者。要实现分页,开发者需要手动编写代码来实现分页逻辑,这不仅增加了开发难度,也...
### Struts框架下的分页实现 #### 1. 基本思路与流程 在Struts框架中,分页主要涉及以下几个步骤: - 首先,确定每页显示的记录数。 - 其次,计算总页数和当前页码。 - 再次,根据当前页码获取相应的数据集。 - ...
在IT行业中,文章正文分页实现是一个常见的需求,特别是在网页设计、内容管理系统(CMS)以及电子阅读器等应用中。这种功能使得长篇文章能够被合理地分割成多个页面,提高用户的阅读体验,避免一次性加载过多内容...
在这个分页实现中,Action类会执行以下操作: 1. **查询数据**:Action类会调用MyBatis的Mapper接口,传递当前页码和每页记录数作为参数,查询对应页的数据。在MyBatis中,可以通过动态SQL实现分页查询,例如使用`...
"android电子书(txt)分页实现"这个项目专注于解决如何在Android应用中对TXT格式的电子书进行有效的分页处理。这里我们将深入探讨实现这一功能所涉及的关键知识点。 1. **文本解析**:TXT文件是一种纯文本格式,不...
至此,一个基本的SSM框架下的分页实现已经完成。但实际项目中,我们可能还需要考虑更多的细节,比如分页插件的使用(如MyBatis的PageHelper),以及对查询条件、排序方式等的处理。此外,前端分页样式和交互也需要...
以下是对分页实现的详细说明: 一、基础概念 分页是将数据库查询结果分割成多个页面,每次请求只返回一部分数据,而不是一次性返回所有数据。这在Web应用中尤其常见,如搜索引擎、电商网站等,用户通常会通过点击...
在实际项目中,分页实现可能更为复杂,例如需要考虑性能优化,比如预加载相邻页数据,或者使用懒加载来减少初始加载时间。同时,现代前端框架如React、Vue或Angular提供了更高级的分页组件和状态管理工具,简化了...
该分页实现不需要详细看原理,直接把DAO中的两个方法和已经实现好的分页辅助bean加到你的项目中,再把分页辅助的jsp直接包含进来,只要在你的显示层加两句jsp就OK. ========================================== 原来也...
这里我们讨论的是“简单的MVC分页实现”,这是一个基于模型-视图-控制器(Model-View-Controller)架构的分页方法。在MVC模式下,应用程序分为三个主要组件:模型(Model)负责数据的处理和存储,视图(View)负责...
二、前端分页实现方式 前端分页主要分为两种方式:纯前端分页和前后端联动分页。 1. 纯前端分页:所有数据一次性从后端获取,然后在前端进行分页处理。这种方式对后端压力较小,但当数据量过大时,会增加页面加载...
SSH框架下的分页实现不仅需要在DAO层合理设计查询方法,还应充分利用Spring和Hibernate的特性,如`HibernateDaoSupport`和`HibernateCallback`,同时引入专门的`PageBean`类来管理分页状态。这种设计模式不仅提高了...
Java 分页实现是Java开发中常见的一种技术,用于在大量数据中进行高效的查询和展示,以提高用户体验并减轻服务器负载。在处理大数据集时,分页尤为重要,因为它允许用户逐步加载和浏览信息,而不是一次性加载所有...