当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:13:00  来源:本站整理

基于Hibernate Query实现分页器[Java编程]

赞助商链接



  本文“基于Hibernate Query实现分页器[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

import java.util.List;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.ScrollableResults;
/** *//**
* <p>Title:分页器</p>
*
* <p>Description:</p>
*
* <p>Copyright: Copyright (c) 2006</p>
*
* <p>Company: </p>
*
* <p>Author: 一个人的日子</p>
*
* <p>Version: 1.0</p>
*
* <p>Create Date: 2006-08-17</p>
*
*/
public class Page ...{
private List result; //后果集
  private int pageSize; //页大小
  private int startPage; //起始页 从1开始
  private ScrollableResults scrollableResults;
  private int totalResults; //总记录的条数
  private int totalPages; //总页数
  
public Page (int startPage,int pageSize,Query query)...{
 this.startPage=startPage;
   this.pageSize=pageSize;
   this.result=null;  
   try ...{
  this.scrollableResults=query.scroll();
  this.scrollableResults.last();
  if(scrollableResults.getRowNumber()>=0)...{
  this.totalResults=this.scrollableResults.getRowNumber() + 1;
  } else ...{
  this.totalResults=0;
  }
  setTotalPages();
  result=query.setFirstResult((this.getStartPage()-1)*this.pageSize).setMaxResults(this.pageSize).list();
 } catch (HibernateException e) ...{
  e.printStackTrace();
 }
  }
/** *//**
 * 得到查询后果
 * @return 查询后果
 */
public List getResult() ...{ 
 return result;
}
/** *//**
 * 得到起始页
 * @return
 */
public int getStartPage() ...{
 if(startPage<1)...{
  startPage= 1;
 }
 if(startPage>totalPages)...{
  startPage=totalPages;
 }
 return startPage;
}
/** *//**
 * 得到记录总数
 * @return
 */
public int getTotalResults() ...{
 return totalResults;
}
/** *//**
 * 得到页大小
 * @return
 */
public int getPageSize() ...{
    return pageSize;
  }
/** *//**
 * 判断能否是第一页
 * @return
 */
public boolean isFirstPage()...{
 return this.startPage==1;
}
/** *//**
 * 判断能否是有后一页
 * @return
 */
public boolean hasNextPage()...{
 return this.startPage<this.totalPages;
}
/** *//**
 * 判断能否是有前一页
 * @return
 */
public boolean hasPreviousPage()...{
 return this.startPage>1;
}
/** *//**
 * 设置总页数
 *
 */
private void setTotalPages() ...{
 this.totalPages=this.totalResults/this.pageSize;
 if(totalPages*pageSize<totalResults)...{
  totalPages++;
 }
}
/** *//**
 * 得到总页数
 * @return
 */
public int getTotalPages() ...{
 return totalPages;
}
}


  以上是“基于Hibernate Query实现分页器[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 基于Hibernate Query实现分页器
  • 基于Hibernate和Struts的J2EE操纵开辟
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .