您的位置:首页 > 其它

一个通用的分页方法

2017-11-17 14:15 399 查看
1.分页底层代码

public class Pagination {

 private Integer rowCount = 0;

 private Integer pageCount = 0;

 private Integer currentPage = 1;

 private Integer pageSize = 10;

 private String actionName;

 private String sql;

 private String hql;

 private String resultpage ;

 private String params ;

 public Pagination() {

  super();

 }

 public Pagination(Integer rowCount, Integer pageCount, Integer currentPage,

   Integer totalPage, Integer pageSize) {

  super();

  this.rowCount = rowCount;

  this.pageCount = pageCount;

  this.currentPage = currentPage;

  this.pageSize = pageSize;

 }

 public Integer getRowCount() {

  return rowCount;

 }

 public void setRowCount(Integer rowCount) {

  this.rowCount = rowCount;

  this.pageCount = (rowCount + this.pageSize - 1)/this.pageSize;

 }

 public Integer getPageCount() {

  return pageCount;

 }

 public void setPageCount(Integer pageCount) {

  this.pageCount = pageCount;

 }

 public Integer getStartRow() {

  return (getCurrentPage()-1)*getPageSize();

 }

 

 public Integer getEndRow() {

  return getCurrentPage()*getPageSize();

 }

 public Integer getCurrentPage() {

  if(currentPage > pageCount)

   currentPage = pageCount;

  if(currentPage < 1)

   currentPage = 1;

  return currentPage;

 }

 public void setCurrentPage(Integer currentPage) {

  this.currentPage = currentPage;

 }

 public Integer getPageSize() {

  return pageSize;

 }

 public void setPageSize(Integer pageSize) {

  this.pageSize = pageSize;

 }

 public String getActionName() {

  return actionName;

 }

 public void setActionName(String actionName) {

  this.actionName = actionName;

 }

 public String getSql() {

  return sql;

 }

 public void setSql(String sql) {

  this.sql = sql;

 }

 public String getHql() {

  return hql;

 }

 public void setHql(String hql) {

  this.hql = hql;

 }

 public String getResultpage() {

  return resultpage;

 }

 public void setResultpage(String resultpage) {

  this.resultpage = resultpage;

 }

 public String getParams() {

  return params;

 }

 public void setParams(String params) {

  this.params = params;

 }

}

2.分页页面代码

<%@ page language="java" contentType="text/html; charset=utf-8"

    pageEncoding="utf-8"%>

<%@ page import="dong.util.Pagination"%>

<SCRIPT language=javascript>

function goPage(page)

{

 document.getElementById("currentPage").value=page;

 document.getElementsByName("pagination")[0].submit();

}

</SCRIPT>

<form action='<c:url value="${pagination.actionName }${pagination.params}"/>' name="pagination" method="post" style="display: none">

 <input type="hidden" name="rowCount" value="${pagination.rowCount }"/>

 <input type="hidden" id="currentPage" name="currentPage" value="${pagination.currentPage }"/>

 

</form>

<font>共查找到</font> <font color="red">${pagination.rowCount }</font> <font>条记录,</font>

<font>当前第</font> <font color="red">${pagination.currentPage }</font> <font>页,</font>

<font>共</font> <font color="red">${pagination.pageCount }</font> <font>页</font>

  

<img alt="首页" src='<c:url value="images/pagination/fy_dy.gif"/>' onclick="goPage(1)" style="cursor: pointer;"/>

 

<img alt="上一页" src='<c:url value="images/pagination/fy_sy.gif"/>' onclick="goPage(${pagination.currentPage-1 })" style="cursor: pointer;"/>

 

<img alt="下一页" src='<c:url value="images/pagination/fy_xy.gif"/>' onclick="goPage(${pagination.currentPage+1 })" style="cursor: pointer;"/>

 

<img alt="末页" src='<c:url value="images/pagination/fy_zh.gif"/>' onclick="goPage(${pagination.pageCount })" style="cursor: pointer;"/>

  <font>跳转到第</font>

<select onchange="goPage(this.value)" style="width:70px">

<option value="1"></option>

<%

 Pagination pagination = (Pagination)request.getAttribute("pagination");

 Integer pageCount = pagination.getPageCount();

 for(int i=1; i <= pageCount; i++){

  out.write("<option value=\""+i+"\">"+i+"</option>");

 }

%>

</select>

<font>页</font>  

3.实现在当前页面刷新

  function pagereload(){

 var currentPage = ${pagination.currentPage};

 var rowCount = ${pagination.rowCount};

 var word = $("#word").val();

 var catelogyId = $("#qcatelogyId").val();

 var url = 'queryCensorWord?word='+word+'&catelogyId='+catelogyId+'¤tPage='+currentPage+'&rowCount='+rowCount+'#datalist';

 window.location.href = url ;

}

将window.location.reload()换成pagereload()即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  pagination