java分页代码实现1

来源:互联网 发布:怎么破解网络机顶盒 编辑:程序博客网 时间:2024/06/05 07:53

public class PageCut {
 
 private int sump;//总页数
 private int curp;//当前页数
 private int pagesize;//页面容量
 private Collection result;
 
 public PageCut() {
  super();
 }

 public int getCurp() {
  return curp;
 }

 public void setCurp(int curp) {
  this.curp = curp;
 }

 public int getPagesize() {
  return pagesize;
 }

 public void setPagesize(int pagesize) {
  this.pagesize = pagesize;
 }
//*****************************
//name参数为类名


 public Collection getResult(String name) {
  
  Session session=HbnUtil.getSession();
  Transaction tran=session.beginTransaction();
  tran.begin();
  String hql="from "+name;
  List list=null;
  try {
   list=session.createQuery(hql).
   setFirstResult((curp-1)*pagesize).setMaxResults(pagesize).list();
  } catch (Exception e) {
   e.printStackTrace();
   throw new DaoException("dao error in FindPage"+name);
  }
  System.out.println(list);
  
  return list;
 }
//*****************************
 public void setResult(Collection result) {
  this.result = result;
 }

 public int getSump() {
  return sump;
 }
 
 public int initSump(String name){
  
  Session session =HbnUtil.getSession();
  Transaction tran=session.beginTransaction();
  int sum=0;
  String hql="select count(a) from "+name+" a";
  sum=Integer.parseInt(session.createQuery(hql).uniqueResult().toString());
  if(sum%pagesize==0){
   sump=sum/pagesize;
  }else{
   sump=sum/pagesize+1;
  }
  tran.commit();
  session.close();
  return sum;
 } 
}

原创粉丝点击