1. 把pager-taglib.jar导入到当前项目/Test/WebRoot/WEB-INF/lib下
  2. 建立一个分页类
    package web;
    
    import java.util.List;
    
    /**
    * 分页模型
    *
    */
    public class PagerModel { // 总记录数
    private int total;
    // 当前页的结果集
    private List datas; public int getTotal() {
    return total;
    } public void setTotal(int total) {
    this.total = total;
    } public List getDatas() {
    return datas;
    } public void setDatas(List datas) {
    this.datas = datas;
    } }
  3. 建立一个JSP页面
    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
    <%@ taglib uri="http://jsptags.com/tags/navigation/pager" prefix="pg"%>
    <html>
    <head>
    <base href="<%=basePath%>">
    <title>新闻列表</title>
    </head>
    <body>
    <pg:pager items="22" url="news.do" index="half-full" maxPageItems="5"
    maxIndexPages="10" isOffset="<%=false%>"
    export="pageOffset,currentPageNumber=pageNumber" scope="request">
    <pg:param name="method" value="all" />
    <table align="center">
    <c:forEach items="${newsList}" var="nlist">
    <tr>
    <td>${nlist.sort.stname}</td>
    <td><a href="news.do?method=info&nid=${nlist.nid}"
    target="_blank">${nlist.ntitle}</a></td>
    <td><fmt:formatDate value="${nlist.ntime}"
    pattern="yyyy/MM/dd HH:mm" /></td>
    </tr>
    </c:forEach>
    </table>
    <pg:index export="total=itemCount">
    <center>
    <table border=1 cellpadding=0 width=70% cellspacing=0>
    <tr align=center valign=top>
    <pg:first>
    <td width="50">总计${total}个记录,第${currentPageNumber} /
    <fmt:formatNumber pattern="0" value="${total % 5 == 0 ? total / 5 :total / 5 +1}" />
    页</td>
    <c:choose>
    <c:when test="${currentPageNumber ne pageNumber}">
    <td width="50"><a href="<%=pageUrl%>&pageNo=<%=pageNumber%>"><b>首页</b> </a></td>
    </c:when>
    <c:otherwise>
    <td width="50"><b>首页</b></td>
    </c:otherwise>
    </c:choose>
    </pg:first>
    <pg:prev ifnull="true">
    <c:choose>
    <c:when test="${!empty pageUrl}">
    <td width="50"><a href="<%=pageUrl%>&pageNo=<%=pageNumber%>"><b>上一页</b> </a></td>
    </c:when>
    <c:otherwise>
    <td width="50"><b>上一页</b></td>
    </c:otherwise>
    </c:choose>
    </pg:prev>
    <pg:pages>
    <c:choose>
    <c:when test="${currentPageNumber eq pageNumber}">
    <td width="10"><font color="red">${pageNumber}</font></td>
    </c:when>
    <c:otherwise>
    <td width="10"><a href="${pageUrl}&pageNo=${pageNumber}">${pageNumber}</a></td>
    </c:otherwise>
    </c:choose>
    </pg:pages>
    <pg:next ifnull="true">
    <c:choose>
    <c:when test="${!empty pageUrl}">
    <td width="50"><a href="${pageUrl}&pageNo=${pageNumber}">下一页</a></td>
    </c:when>
    <c:otherwise>
    <td width="50"><b>下一页</b></td>
    </c:otherwise>
    </c:choose>
    </pg:next>
    <pg:last>
    <c:choose>
    <c:when test="${currentPageNumber ne pageNumber}">
    <td width="50"><b><a href="${pageUrl}&pageNo=${pageNumber}">尾页</a></b></td>
    </c:when>
    <c:otherwise>
    <td width="50"><b>尾页</b></td>
    </c:otherwise>
    </c:choose>
    </pg:last>
    </tr>
    </table>
    </center>
    </pg:index>
    </pg:pager>
    </body>
    </html>

pager-taglib使用示范的更多相关文章

  1. pager-taglib分页处理的使用

    pager-taglib是java中一个用于分页的小的框架.下面简单介绍一下它的具体使用. 一.环境的搭建: 将pager-taglib-2.0.war包拷贝到Tomcat的webapps下.启动To ...

  2. springmvc 孔浩 hibernate code

    model--User package model; import javax.persistence.Entity; import javax.persistence.GeneratedValue; ...

  3. 分页技术框架(Pager-taglib)学习二(SSH数据库分页)

    一.Pager-taglib数据库分页前提    Pager-taglib分页标签也可以实现数据库分页,与页面分页不同的是需要给后台传两个参数,一个是pageNo(当前页数)或pageOffset(偏 ...

  4. struts2:上传多个文件时实现带进度条、进度详细信息的示范

    上一篇文章讲了上传单个文件与上传多个文件(属性驱动)的例子.本例是上传多个文件(属性驱动),并且显示进度条.进度详细信息的示范. 在文件上传选择界面,允许用户增加.删除选择的文件,且只能上传指定类型的 ...

  5. 使用pager进行分页

    pager jar网址:http://java2s.com/Code/Jar/t/Downloadtaglibspagejar.htm package com.binary.entity; impor ...

  6. struts2:图解action之HelloWorld示范(从action转到JSP)

    虽然Struts 2.x的Action在技术上不需要实现任何接口或继承任何类型,但是,大多情况下我们都会出于方便的原因,使Action类继承com.opensymphony.xwork2.Action ...

  7. MVC如何使用开源分页插件shenniu.pager.js

    最近比较忙,前期忙公司手机端接口项目,各种开发+调试+发布现在几乎上线无问题了:虽然公司项目忙不过在期间抽空做了两件个人觉得有意义的事情,一者使用aspnetcore开发了个人线上项目(要说线上其实只 ...

  8. [JSP]自定义标签库taglib

    自定义标签的步骤 自定义标签的步骤大概有三步: 1.继承javax.servlet.jsp.tagext.*下提供的几个标签类,如Tag.TagSupport.BodyTagSupport.Simpl ...

  9. 自己写的一个Pager分页组件,WebForm,Mvc都适用

    我一说写这个功能的时候,好多人估计有疑问.分页功能网上多的是,搜一个不就行了,你这样不是浪费时间么.你说这句话的时候,我是比较信的,首先自己写一些东西是很耗时,有这些时间又能多打几盘LOL了.但是我觉 ...

随机推荐

  1. 从epoll构建muduo-11 单线程Reactor网络模型成型

    mini-muduo版本传送门 version 0.00 从epoll构建muduo-1 mini-muduo介绍 version 0.01 从epoll构建muduo-2 最简单的epoll ver ...

  2. 浅析NSTimer & CADisplayLink内存泄露

    偶得前言 NSRunLoop与定时器 - invalidate的作用 我们如何解决? 偶得前言 本篇文章中我们主要谈谈NSTimer\CADisplayLink在使用过程中牵扯到内存泄露的相关问题及解 ...

  3. 如何用SVN进行个人版本管理

    事实上SVN的确是我用过的最好的源码管理工具,虽然我用过的这类工具并不多,只有VSS.CVS和SVN,其它像PVCS. TeamSource.ClearCase之类的只有耳闻,因为它们都是商业产品,并 ...

  4. 关于material和sharedMaterial的问题

    在unity3d中,Renderer组件有两个属性:material和sharedMaterial,它们都可以用来获取Renderer的材质属性.但是它们之间却又很大的区别,下面通过示例来讲解一下. ...

  5. JavaScript学习(2)

    时间就像海绵里的水,要挤总还是有的,所以在最近不是太忙的时间里,我选择了挤时间,一点点的挤出了大把的时间,于是乎便迎来了我对javascript的第二阶段的学习,首先说下, 说起JavaScript大 ...

  6. Pythn中的super用法

    在Python类的方法(method)中,要调用父类的某个方法,在Python 2.2以前,通常的写法如代码段1: 代码段1: 代码如下: class A: def __init__(self): p ...

  7. 关于ubuntu16.04给firefox安装flash的补充

    这两天把自己的老笔记本安装了ubuntu的16.04版本,关于给firefox安装flash player的方法,网上有很多,但不知道是版本还是其它原因,他们文章都出现目录错误的问题,我个人由于是ub ...

  8. C复习手记(Day4)

    1.C错误处理 errno.perror() 和sterror() perror() 函数显示您传给它的字符串,后跟一个冒号.一个空格和当前 errno 值的文本表示形式. strerror() 函数 ...

  9. 自动生成 Lambda查询和排序,从些查询列表so easy

    如下图查询页面,跟据不同条件动态生成lambda的Where条件和OrderBy,如果要增加或调整查询,只用改前台HTML即可,不用改后台代码 前台代码: <div style="pa ...

  10. 生成getter()、setter()方法去掉变量前缀

    当定义的变量名有前缀但是不想在生成它的getter()和setter方法的时候让前缀出现,比如今天项目的部分代码: public class Crime { private UUID mId; //标 ...