action:
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;
}
}
分享到:
相关推荐
在Struts2中,我们可以利用Pager-taglib的标签来展示分页链接和当前页的信息。在JSP页面上,可以使用`<s:pager>`标签,配置相应的属性,如总记录数、每页记录数、当前页码等。 例如: ```jsp ...
### j2ee中struts+hibernate+spring+pager-taglib分页实例 #### 概述 在Java企业级应用开发中,Struts、Hibernate、Spring与Pager Taglib经常被联合使用,以构建高性能、高灵活性的应用系统。本文将详细介绍如何...
1. **分页标签**:Pager-taglib提供了如`<pager:page>`、`<pager:first>`、`<pager:last>`、`<pager:previous>`和`<pager:next>`等标签,它们分别用于显示当前页、首页、末页、上一页和下一页的链接。开发者可以通过...
pager-taglib 是个很好的jsp分页标签,使用它结合jstl可以实现灵活的分页导航功能。在实际的开发中post方式的提交比较常见,本人做了一个比较通用的基于post方式的一个应用。主要实现一下功能: 1.添加输入跳转、每...
Pager-taglib,支持多种风格的分页显示。实际上她是一个Jsp标签库,为在JSP上显示分页信息而设计的一套标签,通过这些标签的不同的组合,会形成多种不一样的分页页面,风格各异,她自带的DEMO就有七种左右的分页风格...
这个标签库通常与Spring MVC、Struts2等框架结合使用,提供了一种声明式的方式来展示数据分页。下面将详细解释`pager-taglib`的使用方法、核心概念以及其在实际项目中的应用。 一、`pager-taglib`概述 `pager-...
**Pager-taglib分页方法详解** Pager-taglib是Java Web开发中一种常用的分页标签库,它极大地简化了在JSP页面中实现分页功能的过程。这个标签库通常与Servlet和JSP一起使用,尤其在大数据量展示时,提供用户友好的...
"pager-taglib-2.0" 可以无缝集成到Spring MVC、Struts等主流Java Web框架中,与ORM框架如Hibernate、MyBatis配合使用,简化数据分页的处理流程。 7. **注意事项** - 要确保正确配置了Taglib的URI,否则可能会...
Displaytag和Pager-taglib是两个在Java Web开发中常用的分页库,主要用于处理大量数据的显示,提升用户体验,减轻服务器压力。这两个库都是基于JSP标签库(Tag Library)实现的,可以方便地集成到Spring、Struts等...
3. **兼容性好**:"pager-taglib-2.0" 兼容各种主流的Web框架,如Spring MVC、Struts等,可以无缝集成到现有的项目结构中。 4. **智能分页**:它能根据数据库记录总数自动计算出页码,并支持跳转至任意页的功能,还...
【标题】"jsp , struts ,hibernate,pager-taglib实现的分页显示"涉及的知识点主要包括四个关键部分:JSP(JavaServer Pages)、Struts、Hibernate以及Pager-Taglib分页库。这些技术都是Java Web开发中的核心组件,...
### 使用pager-taglib实现分页显示的详细步骤 在现代Web开发中,为了提升用户体验以及减轻服务器负担,分页功能成为了一个不可或缺的部分。本文将详细介绍如何利用`pager-taglib`结合SSH(Struts、Spring、...
pager-taglib 是个很好的jsp分页标签,使用它结合jstl可以实现灵活的分页导航功能。在实际的开发中post方式的提交比较常见,本人做了一个比较通用的基于post方式的一个应用。主要实现一下功能: 1.添加输入跳转、每...
本资源融合了struts+spring+hibernate的集成,并充分运用jsp开源分页标签(pager-taglib)进行了分页。支持多条件的分页查询。由于上传大小限制,本人被迫将所用到的jar包目录删除,所需的几个必备jar包我已留在本...
1. **下载Pager Taglib**:可以从Struts2的官方仓库或者第三方软件源获取Pager Taglib的jar包。确保下载的是与当前Struts2版本兼容的版本。 2. **添加依赖**:将下载的jar包添加到项目的类路径中。如果是Maven项目...
打开方法: http://localhost:8080/pagertaglib/dbPageAction.do?pageSize=5&pager.offset=0&pageNo=1<br>在Struts中应用标签但一次取数据在页面自动分页的示例(test2.jsp),打开方法: ...
7. **整合其他框架**:除了Struts 2,`pager-taglib`也可以与其他MVC框架(如Spring MVC)结合使用,只需要适配相应的请求处理机制即可。 8. **最佳实践**:在实际项目中,为了保持代码整洁,建议将与分页相关的...
总的来说,Pager-taglib分页插件为Java Web开发者提供了一个高效的解决方案,通过简洁的JSP标签语法实现了分页功能,大大提高了开发效率。无论是在快速搭建报表系统还是构建其他数据密集型应用时,它都是一个值得...
本主题将深入探讨如何利用pager-taglib库实现类似于Google的高效分页效果,该库是基于Spring、Struts和Hibernate(SSH)框架的。下面我们将详细讲解相关知识点。 首先,** pager-taglib **是一个自定义的JSP标签库...
在这个主题中,我们将深入探讨如何在SSH框架下使用`pager`标签库来实现高效的分页显示。首先,我们需要理解分页在Web应用中的重要性,它能够帮助用户更有效地浏览大量数据,提高用户体验。 **一、SSH框架简述** ...