`
hngmduyi
  • 浏览: 329994 次
  • 性别: 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及使用方法,一个很好用的页面分页工具.

    pager-taglib-2.0

    pager-taglib-2.0,pager-taglib-2.0,pager-taglib-2.0,java分页标签。

    pager-taglib-ra2.0

    pager-taglib-ra2.0 内含jar 这是很好的分页标签库

    使用pager-taglib分页完整例子

    使用pager-taglib分页,含有多种分页样式,jar包都有,只要导入就可以运行,内附有说明,java 语言的

    pager-taglib-2.0.jar 已解决乱码

    已解决中文乱码问题的 pager-taglib-2.0.jar包。

    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.添加输入跳转、每...

    pager-taglib-2.0 JSP分页组件

    pager-taglib-2.0 JSP分页组件 包括jar包和安装使用说明

    pager-taglib2.0 加强版

    maven仓库下载的pager-taglib2.0分页时 存在中文参数乱码问题。 须修改 源文件,附件为更改源码后的 jar包

    pager-taglib-2.0完整部署运行

    pager-taglib-2.0完整部署运行 可以直接放到tomcat 的webapps目录中运行,lib中包含pager-taglib.jar 和 pager-src.jar

    pager-taglib-2.0.rar

    非常实用的分页标记库,可以模拟实现Google、Yahoo等网站的分页效果

    pager-taglib 分页框架+附带例子

    该资源系本人工作之余的一个小小案例,希望对大家有所帮助

    pager-taglib源码

    这是pager-taglib的官方源码,但在采用官方的pager-taglib分页传输中文参数会出现乱码,所以我采用maven新建一个pager-taglib项目对pager-taglib的源码进行小小的改动,是他支持中文传输,更重要的是把源代码提供给...

    pager-taglib分页jar包

    用于在jsp中进行分页的 pager-taglib包

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

    通过网上搜集资料,实现了一个struts2+hibernate+pager-taglib的分页小例子,大家在运行例子前,请一定要看包里面的readme.txt文件。里面有环境的搭建。

    ssh2+pager-taglib实现自动分页

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

    pager-taglib分页组建

    pager-taglib分页组建 pager-taglib分页组建 pager-taglib分页组建 pager-taglib分页组建

Global site tag (gtag.js) - Google Analytics