`
wenlong342
  • 浏览: 61077 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

struts+hibernate的分页代码

阅读更多
package com.sict.employeeManagement.help;
import java.util.ArrayList;
import java.util.Iterator;

import com.sict.employeeManagement.data.SzEmployee;




public class PageBean {
int currentPage=1;  //当前页
public int totalPages=0;  //总页数
  int pageRecorders=10;//每页5条数据
  int totalRows=0;  //总数据数
  int pageStartRow=0;//每页的起始数
  int pageEndRow=0;  //每页显示数据的终止数
  boolean hasNextPage=false; //是否有下一页
  boolean hasPreviousPage=false; //是否有前一页
  ArrayList arrayList;
  Iterator it;
public PageBean(){}
  
public PageBean(ArrayList arrayList){
  this.arrayList=arrayList; 
  totalRows=arrayList.size();
// System.out.print(totalRows);
  it=arrayList.iterator();  
  hasPreviousPage=false;
  currentPage=1;
  if((totalRows%pageRecorders)==0)
  {
  totalPages=totalRows/pageRecorders;  
  }
  else
  {
   totalPages=totalRows/pageRecorders+1; 
  } 
  
  if(currentPage>=totalPages)  
  {
   hasNextPage=false; 
  }
  else                        
  {
   hasNextPage=true;
  }

     
     if(totalRows<pageRecorders) 
     {
     this.pageStartRow=0;           
     this.pageEndRow=totalRows;   
     }
     else                       
     {
     this.pageStartRow=0;         
     this.pageEndRow=pageRecorders;   
     }

}

  /**
   * @return Returns the currentPage.
   */
  public String getCurrentPage() {
   return this.toString(currentPage);
  }
  /**
   * @param currentPage The currentPage to set.
   */
  public void setCurrentPage(int currentPage) {
   this.currentPage = currentPage;
  }
  /**
   * @return Returns the pageRecorders.
   */
  public int getPageRecorders() {
   return pageRecorders;
  }
  /**
   * @param pageRecorders The pageRecorders to set.
   */
  public void setPageRecorders(int pageRecorders) {
   this.pageRecorders = pageRecorders;
  }
  /**
   * @return Returns the pageEndRow.
   */
  public int getPageEndRow() {
   return pageEndRow;
  }
  /**
   * @return Returns the pageStartRow.
   */
  public int getPageStartRow() {
   return pageStartRow;
  }
  /**
   * @return Returns the totalPages.
   */
  public String getTotalPages() {
  
   return this.toString(totalPages);
  }
  /**
   * @return Returns the totalRows.
   */
  public String getTotalRows() {
   return this.toString(totalRows);
  }
  /**
   * @return Returns the hasNextPage.
   */
  public boolean isHasNextPage() {
   return hasNextPage;
  }
  /**
   * @param hasNextPage The hasNextPage to set.
   */
  public void setHasNextPage(boolean hasNextPage) {
   this.hasNextPage = hasNextPage;
  }
  /**
   * @return Returns the hasPreviousPage.
   */
  public boolean isHasPreviousPage() {
   return hasPreviousPage;
  }
  /**
   * @param hasPreviousPage The hasPreviousPage to set.
   */
  public void setHasPreviousPage(boolean hasPreviousPage) {
   this.hasPreviousPage = hasPreviousPage;
  }
public SzEmployee[] getNextPage(){
  
  currentPage=currentPage+1;
//  System.out.println("PageBean.getNextPage()正在执行;");
//  System.out.println("参数currentPage="+currentPage);

  if((currentPage-1)>0)
  {
   hasPreviousPage=true; 
  }
     else
     {
      hasPreviousPage=false; 
     }
  
  if(currentPage>=totalPages) 
  {
   hasNextPage=false; 
  }
  else
  {
   hasNextPage=true;
  }
//  System.out.println("参数hasNextPage="+hasNextPage);
//  System.out.println("准备执行PageBean.getBooks()");
  SzEmployee[] employees=getSzEmployees();
  this.description();
  
  return employees;
}

public SzEmployee[] getPreviouspage(){
  
  currentPage=currentPage-1;

     if(currentPage==0){currentPage=1;}
  
  if(currentPage>=totalPages)  
  {
   hasNextPage=false; 
  }
  else                         
  {
   hasNextPage=true;
  }
  if((currentPage-1)>0)
  {
   hasPreviousPage=true; 
  }
     else
     {
      hasPreviousPage=false; 
     }
  SzEmployee[] employees=getSzEmployees();
  this.description();
  return employees;
}

public SzEmployee[] getFirstpage(){
  
  currentPage=1;
  
  if(currentPage>=totalPages)  
  {
   hasNextPage=false; 
  }
  else                         
  {
   hasNextPage=true;
  }
  if((currentPage-1)>0)
  {
   hasPreviousPage=true; 
  }
     else
     {
      hasPreviousPage=false; 
     }
  SzEmployee[] employees=getSzEmployees();
  this.description();
  return employees;
}

public SzEmployee[] getLastpage(){
  
  currentPage=totalPages;
  
  if(currentPage>=totalPages)  
  {
   hasNextPage=false; 
  }
  else                         
  {
   hasNextPage=true;
  }
  if((currentPage-1)>0)
  {
   hasPreviousPage=true; 
  }
     else
     {
      hasPreviousPage=false; 
     }
  SzEmployee[] employees=getSzEmployees();
  this.description();
  return employees;
}

public SzEmployee[] getSzEmployees(){
// System.out.println("pageBean.getPros()开始执行;");
  
  
  if(currentPage*pageRecorders<totalRows){//判断是否为最后一页
   pageEndRow=currentPage*pageRecorders;
      pageStartRow=pageEndRow-pageRecorders;
  }
  else{
   pageEndRow=totalRows;
   pageStartRow=pageRecorders*(totalPages-1);
  }
  SzEmployee[] employees=new SzEmployee[pageEndRow-pageStartRow+1];
  
// System.out.println("pageStartRow="+pageStartRow);
// System.out.println("pageEndRow="+pageEndRow);
   int j=0; 
  for(int i=pageStartRow;i<pageEndRow;i++)
  {
  if(i>=0){
  SzEmployee employee=(SzEmployee)arrayList.get(i); 
  employees[j++]=employee;
}
  
  }

  this.description();
  return employees;
}

public String toString(int temp)
{
String str=Integer.toString(temp);
return str;
}

public void description()
{

    String description="共有数据数:"+this.getTotalRows()+

    "共有页数: "+this.getTotalPages() +

    "当前页数为:"+this.getCurrentPage()+
    
    " 是否有前一页: "+this.isHasPreviousPage() +

    " 是否有下一页:"+this.isHasNextPage()+

    " 开始行数:"+this.getPageStartRow()+

    " 终止行数:"+this.getPageEndRow();

  //  System.out.println(description);

}
}


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics