首先创建一个PageBean,代码如下:
public class Page {
private int totalpages;//总页数
private int currentpage;//当前页
private int pagesize =10;//每页显示个数(可以不写死,自由设定,根据需求而定)
private int totalrows;//总条数
private List date = new ArrayList();//当前存放对象
public Page() {
super();
// TODO Auto-generated constructor stub
}
public Page(int totalpages, int currentpage, int pagesize, int totalrows,
List date) {
super();
this.totalpages = totalpages;
this.currentpage = currentpage;
this.pagesize = pagesize;
this.totalrows = totalrows;
this.date = date;
}
public int getTotalpages() {
return this.totalrows%this.pagesize==0?this.totalrows/this.pagesize:this.totalrows/this.pagesize+1;
}
public void setTotalpages(int totalpages) {
this.totalpages = totalpages;
}
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;
}
/**
* @return the totalrows
*/
public int getTotalrows() {
return totalrows;
}
public void setTotalrows(int totalrows) {
this.totalrows = totalrows;
}
public List getDate() {
return date;
}
public void setDate(List date) {
this.date = date;
}
/**
* 上一页
*/
public int getPrevPage() {
if(getCurrentpage() == 1)
return currentpage;
else
return currentpage - 1;
}
/**
* 下一页
*/
public int getNextPage() {
if(getCurrentpage()== this.totalpages)
return currentpage;
else
return currentpage + 1;
}
//第一页
public int getFirstPage(){
return 1;
}
//最后页
public int getLastPage(){
return totalpages;
}
}
Dao层处理方法有2中,第一种是hibernate独立分页,第二种是hibernate注入spring后利用getHibernateTempl()方法分页:
独立分页方法:
public page selectByPage(final int startpage, final int pagesize , String hql){
Page page = new Page();
Session ss = hibernateSessionFactory().getSessionFactory().getSession();
Query query = ss.createQuery(hql);
query.setFirstResult((startpage-1)*pagesize);
query.setMaxResults(pagesize);
page.setDate(query.list());
page.setTotalrows(query.list().size());
return page;
}
注入spring后的方法:
public Page selectBypage(final int startpage, String hql , final int pagesize) {
// TODO Auto-generated method stub
Page page = new Page();
page.setDate(getHibernateTemplate().executeFind(new HibernateCallback() {
public List<Dept> doInHibernate(Session s) throws HibernateException,
SQLException {
// TODO Auto-generated method stub
Query query = s.createQuery(hql);
query.setFirstResult((startpage-1)*pagesize);
query.setMaxResults(pagesize);
return query.list();
}
}));
int totalrows = getHibernateTemplate().find(hql).size();
page.setTotalrows(totalrows);
return page;
}
Biz层自己根据情况去写吧~
分享到:
相关推荐
使用struts、hibernate进行分页处理 使用struts、hibernate进行分页处理 使用struts、hibernate进行分页处理 使用struts、hibernate进行分页处理 使用struts、hibernate进行分页处理
使用Struts + Spring + Hibernate完成分页笔记使用Struts + Spring + Hibernate完成分页笔记使用Struts + Spring + Hibernate完成分页笔记
hibernate分页Hibernate 分页的设计和编码
hibernate通用分页 方便好用 hibernate通用分页 方便好用
STRUTS2+HIBERNATE分页 实现代码详细的分页实现代码实现代码详细的分页实现代码实现代码详细的分页实现代码实现代码详细的分页实现代码
Struts+Hibernate实现分页.
Hibernate分页可能引起的性能问题 在使用Hibernate进行分页的过程中,如果你收到如下警告,那么这里就是一个潜在的性能问题点: WARNING: firstResult/maxResults specified with collection fetch; applying in ...
Spring+Hibernate的完整分页代码,本例用的是Mysql数据库,可用于Sturts和Webwork,稍经改编,即可应用于各种Project.
hibernate_mysql_struts2 实现的通用分页类.欢迎指正
hibernate通用分页组件 简单好用
java+hibernate实现分页 public String execute() throws Exception { System.out.println("Page:" + page); pagePlanList = ps.findPlantByPage(page, rowsPerPage); totalPage = ps.getPlanTotalPage...
Hibernate分页查询小结
好久没写过什么东西了,最近自己在学习Java WEB方面的东西,自己想用JSP和 Struts2 HIBERNATE来写一个自己工作室的网站练练手,稍微有些收获今天写出来,与大家一起分享一下:STRUTS2+HIBERNATE实现分页是JAVA WEB最...
struts+spring+hibernate通用分页方法.rar 博文链接:https://igogogo9.iteye.com/blog/97692
hibernate商品分页展示,包括分页逻辑分析,代码实现
Struts+Hibernate完成分页笔记Struts+Hibernate完成分页笔记Struts+Hibernate完成分页笔记Struts+Hibernate完成分页笔记
使用hibernate对list等进行分页查询的完整页面代码,希望能帮助大家,同时有什么疑问的话,希望大家多多指正和给出建议或意见。
数据库分页实际上是利用数据库本身SQL扩展的功能进行分页,例如MySQL的 limit 0,50这样的SQL语句。不但速度快,而且非常节省内存。不过不是每种数据库的都有这种分页支持的SQL,例如SQL Server就不支持。 4.scroll...
使用hibernate实现的分页效果 orm 映射 session 等技能点 带有注释和案例演示 表生成语句
用户Hibernate实现的一个分页 希望对大家有用哦!!!