`
hngmduyi
  • 浏览: 335179 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

pager-taglib-2.0+struts2结合实现的分页

阅读更多
//实体类
public class Goods implements java.io.Serializable {
	private Integer id;
	private String goodName;
	private Integer goodType;
         //省略get/set方法
}

//DAO
public class GoodDao {
	/**
	 * 查询所有商品
	 */
	public List<Goods>loadAll(){
		Session session=HibernateSessionFactory.getSession();
		List<Goods>goodsList=session.createCriteria(Goods.class).list();
		System.out.println(goodsList.size());
		return goodsList;
	}
	/**
	 * 根据参数去加载每页数据
	 */
	public List<Goods> loadPage(int offset,int pagesize ){
		Session session=HibernateSessionFactory.getSession();
		List<Goods>goodsList=session.createCriteria(Goods.class).setFirstResult(offset).setMaxResults(pagesize).list();
		System.out.println(goodsList.size());
		return  goodsList;
	}
}


//Action
public class GoodAction extends ActionSupport {
    private GoodDao goodDao=new GoodDao();
    private List<Goods>goodsList=goodDao.loadAll();//所有商品集合
    private List<Goods>pageList=new ArrayList();//每页要显示的商品集合
    private Integer total=goodsList.size();//商品总条数
    private Integer offset;//从第几条数据开始加载
    //省略get/set方法
    /**
	 * 分页显示
	 */
	public String findPage(){
		HttpServletRequest request=ServletActionContext.getRequest();
		if(request.getParameter("pager.offset")==null){
			offset=0;
		}else{
			offset=Integer.parseInt(request.getParameter("pager.offset"));
			System.out.println("offset:"+offset);
		}
//10表示每页显示10条数据
		pageList=goodDao.loadPage(offset, 10);
		return "findPage";
	}

//struts.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
    "http://struts.apache.org/dtds/struts-2.1.7.dtd">
  <struts>
       <package name="default" extends="struts-default">
             <action name="goodAction" class="action.GoodAction">           
                   <result name="findPage">/good.jsp</result>
             </action>
       </package>
  </struts>

//goods.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<%@ taglib  uri="http://java.sun.com/jsp/jstl/core"  prefix="c" %>   
<%@ taglib  uri="http://jsptags.com/tags/navigation/pager" prefix="pg"%>  

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>My JSP 'good.jsp' starting page</title>
	<style type="text/css">
	  .goodsDiv{
	         positon:relative;
	         width:100px;
	         height:30px;
	         border:1px;
	      }	         
	</style>
  </head>
  <body>
        <s:iterator value="pageList" id="goods" status="s">
            <div class="goodsDiv"><s:property value="#goods.goodName"/></div>
        </s:iterator>
        
        <pg:pager items="${total}" url="goodAction!findPage" export="offset,currentPageNumber=pageNumber">
            <pg:index>
               <pg:first><a href="${pageUrl}"><nobr>[首页]</nobr></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}"><nobr>[尾页]</nobr></a></pg:last>
            </pg:index>    
        </pg:pager>
  </body>
</html>

//效果图

  • 大小: 12.4 KB
1
0
分享到:
评论
1 楼 cuitengfei2006x 2011-02-15  
ognl.OgnlException: target is null for setProperty(null, "offset", [Ljava.lang.String;@1698506),这个问题不知道楼主是怎么处理的?希望楼主赐教,谢谢!

相关推荐

    pager-taglib-2.0

    "pager-taglib-2.0" 可以无缝集成到Spring MVC、Struts等主流Java Web框架中,与ORM框架如Hibernate、MyBatis配合使用,简化数据分页的处理流程。 7. **注意事项** - 要确保正确配置了Taglib的URI,否则可能会...

    pager-taglib-2.0.rar

    "pager-taglib-2.0" 是一个强大且灵活的分页标记库,它简化了Web开发中的分页实现,使得开发者能够快速地构建出类似大型网站的分页功能。其易于集成、高度定制化和良好的性能表现,使得它成为Java Web开发中的一个...

    pager-taglib-2.0完整源码和Struts演示示例工程

    在Struts中应用标签但一次取数据在页面自动分页的示例(test2.jsp),打开方法: http://localhost:8080/pagertaglib/pageAction.do?pager.offset=0&lt;br&gt;pager-demo.jsp是原标签自带示例索引: ...

    pager-taglib 分页扩展实例

    pager-taglib 是个很好的jsp分页标签,使用它结合jstl可以实现灵活的分页导航功能。在实际的开发中post方式的提交比较常见,本人做了一个比较通用的基于post方式的一个应用。主要实现一下功能: 1.添加输入跳转、每...

    struts2+pager-taglib 实现分页小例子

    总结来说,这个例子展示了如何在Struts2框架下结合Hibernate和Pager-taglib实现一个基本的分页功能。通过理解Action类的职责、Hibernate的数据访问机制以及Pager-taglib的使用方法,我们可以轻松地在实际项目中实现...

    pager-taglib 分页标签使用

    这个标签库通常与Spring MVC、Struts2等框架结合使用,提供了一种声明式的方式来展示数据分页。下面将详细解释`pager-taglib`的使用方法、核心概念以及其在实际项目中的应用。 一、`pager-taglib`概述 `pager-...

    ssh2+pager-taglib实现自动分页

    Pager-taglib,支持多种风格的分页显示。实际上她是一个Jsp标签库,为在JSP上显示分页信息而设计的一套标签,通过这些标签的不同的组合,会形成多种不一样的分页页面,风格各异,她自带的DEMO就有七种左右的分页风格...

    使用pager-taglib实现分页显示的详细步骤

    本文将详细介绍如何利用`pager-taglib`结合SSH(Struts、Spring、Hibernate)框架实现从前端到后端的分页功能。 #### 一、准备工作 在开始之前,确保项目环境中已经引入了Struts、Spring、Hibernate以及`pager-...

    ssh+分页(pager-taglib)

    本资源融合了struts+spring+hibernate的集成,并充分运用jsp开源分页标签(pager-taglib)进行了分页。支持多条件的分页查询。由于上传大小限制,本人被迫将所用到的jar包目录删除,所需的几个必备jar包我已留在本...

    pager-taglib分页方法

    Pager-taglib是Java Web开发中一种常用的分页标签库,它极大地简化了在JSP页面中实现分页功能的过程。这个标签库通常与Servlet和JSP一起使用,尤其在大数据量展示时,提供用户友好的页面导航,帮助用户按需浏览数据...

    pager-taglib 实现分页

    `pager-taglib`是一个专门用于实现分页功能的标签库,它适用于Struts 2(S2SH)框架。这个第三方组件为开发者提供了便捷的方式来实现网页的动态分页,而无需编写大量的自定义逻辑代码。 `pager-taglib`的核心在于...

    java+pager-taglib分页框架

    5. **国际化与自定义**:由于Pager-taglib是基于JSP标签库的,所以它可以方便地与Spring的MessageSource结合,实现分页文字的国际化。此外,如果内置的样式不能满足需求,开发者还可以自定义标签或者扩展现有的标签...

    jsp , strusts ,hibernate,pager-taglib实现的分页显示

    【标题】"jsp , struts ,hibernate,pager-taglib实现的分页显示"涉及的知识点主要包括四个关键部分:JSP(JavaServer Pages)、Struts、Hibernate以及Pager-Taglib分页库。这些技术都是Java Web开发中的核心组件,...

    displaytag,pager-taglib 分页包

    Displaytag和Pager-taglib是两个在Java Web开发中常用的分页库,主要用于处理大量数据的显示,提升用户体验,减轻服务器压力。这两个库都是基于JSP标签库(Tag Library)实现的,可以方便地集成到Spring、Struts等...

    pager-taglib实现Google分页

    本主题将深入探讨如何利用pager-taglib库实现类似于Google的高效分页效果,该库是基于Spring、Struts和Hibernate(SSH)框架的。下面我们将详细讲解相关知识点。 首先,** pager-taglib **是一个自定义的JSP标签库...

    pager-taglib 分页扩展实例(旧)

    pager-taglib 是个很好的jsp分页标签,使用它结合jstl可以实现灵活的分页导航功能。在实际的开发中post方式的提交比较常见,本人做了一个比较通用的基于post方式的一个应用。主要实现一下功能: 1.添加输入跳转、每...

    pager-taglib_struts2 安装使用

    通过以上步骤,我们就可以在Struts2应用中成功地集成并使用Pager Taglib实现分页功能。记住,良好的分页设计不仅能提高页面加载速度,还能优化用户体验,使用户更容易导航大量的数据。在实际项目中,可以根据具体...

    用Pager-taglib分页插件做个一个分页实例

    在这个实例中,我们将关注"Pager-taglib"分页插件的使用,它是一个基于JSP标签库的工具,能够帮助开发者快速实现分页功能。 Pager-taglib是Apache的Struts Taglib库的一部分,提供了一组方便的JSP标签,用于创建...

    j2ee中struts+hibernate+spring+pager-taglib分页实例

    本文将详细介绍如何通过Struts+Hibernate+Spring+Pager Taglib实现一个完整的分页功能。 #### MVC架构 本实例遵循MVC(Model-View-Controller)设计模式,具体架构如下: - **视图层**:采用JSP技术,用于展示...

Global site tag (gtag.js) - Google Analytics