浏览 1723 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-11-09
public class OrgAction extends ActionSupport implements ModelDriven{ private Organization org; private PageModel pm; private List<Organization> orgs; private OrgDTO orgDto = new OrgDTO(); private int offset; private HttpServletRequest request = ServletActionContext.getRequest(); ApplicationContext cxt = new ClassPathXmlApplicationContext("beans.xml"); OrgManager orgManager = (OrgManager) cxt.getBean("orgManager"); //采用每页多少个 进行显示 来分页 public String list() { pm = orgManager.findOrgs(orgDto.getParentId(), 0, 4); orgs = pm.getDatas(); System.out.println(pm.getTotal()); return "list"; } ************************ dao层: //分页 public PageModel findOrgs(int parentId, int offset, int pagesize) { //获得总记录数 String selectCountString = "select count(*) from Organization o where o.parent = null"; if(parentId != 0) { selectCountString ="select count(*) from Organization o where o.parent.id =" + parentId; } int total = ((Long) this.getHibernateTemple().getSessionFactory().getCurrentSession() .createQuery(selectCountString).uniqueResult()).intValue(); //获取当前页面的数据 String hql = "select o from Organization o where o.parent = null"; if(parentId != 0) { hql = "select o from Organization o where o.parent.id = " + parentId; } List<Organization> datas = this.getHibernateTemple().getSessionFactory().getCurrentSession() .createQuery(hql).setFirstResult(offset).setMaxResults(pagesize).list(); PageModel pm = new PageModel(); pm.setTotal(total); pm.setDatas(datas); return pm; } jsp: <pg:pager url="org/org!findPage" items="${pm.total}" export="currentPageNumber=pageNumber"> <pg:param name="parentId"/> <pg:first> <a href="${pageUrl}">首页</a> </pg:first> <pg:prev> <a href="${pageUrl}">前页</a> </pg:prev> <pg:pages> <c:choose> <c:when test="${currentPageNumber eq pageNumber}"> <font color="red">${pageNumber }</font> </c:when> <c:otherwise> <a href="${pageUrl}">${pageNumber }</a> </c:otherwise> </c:choose> </pg:pages> <pg:next> <a href="${pageUrl}">下页</a> </pg:next> <pg:last> <a href="${pageUrl}">尾页</a> </pg:last> </pg:pager> pageModel: package com.java.cn.model; import java.util.List; public class PageModel { private int total; private List<Organization> datas; public int getTotal() { return total; } public void setTotal(int total) { this.total = total; } public List<Organization> getDatas() { return datas; } public void setDatas(List<Organization> datas) { this.datas = datas; } } 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |