一、标签处理类:
二、标签库描述文件:
- <?xml version="1.0" encoding="UTF-8"?>
- <taglib version="2.0" xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-jsptaglibrary_2_0.xsd">
- <tlib-version>2.0</tlib-version>
- <short-name>my</short-name>
- <uri>http://blog.csdn.net/qjyong</uri>
- <tag>
- <description>通用分页标签</description>
- <name>pager</name>
- <tag-class>com.qiujy.tags.PagerTag</tag-class>
- <body-content>empty</body-content>
- <attribute>
- <name>pageNo</name>
- <required>true</required>
- <rtexprvalue>true</rtexprvalue>
- </attribute>
- <attribute>
- <name>recordCount</name>
- <required>true</required>
- <rtexprvalue>true</rtexprvalue>
- </attribute>
- <attribute>
- <name>pageSize</name>
- <required>true</required>
- <rtexprvalue>true</rtexprvalue>
- </attribute>
- <attribute>
- <name>url</name>
- <required>true</required>
- <rtexprvalue>true</rtexprvalue>
- </attribute>
- </tag>
- </taglib>
三、把标签处理类和tld打成pager.jar包。使用时只需添加到项目的类路径中即可。
四、测试:先写一个Servlet来创建测试数据
- package com.qiujy.web.servlet;
- import java.io.IOException;
- import java.util.ArrayList;
- import java.util.List;
- import javax.servlet.ServletException;
- import javax.servlet.http.HttpServlet;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- public class MyServlet extends HttpServlet {
-
- public static List<String> list = new ArrayList<String>();
-
- public MyServlet(){
- for(int i = 0; i < 100; i++){
- list.add("aaa" + i);
- }
- }
- public void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- this.doPost(request, response);
- }
- public void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- String pageNoStr = request.getParameter("pageNo");
- int pageNo = 1;
- if(pageNoStr != null && !pageNoStr.equals("")){
- pageNo = Integer.parseInt(pageNoStr);
- }
-
- int recordCount = list.size();
- int pageSize = 10;
- int startNo = (pageNo - 1) * pageSize;
-
- List<String> result = list.subList(startNo, startNo + 10);
-
- request.setAttribute("recordCount", recordCount);
- request.setAttribute("pageNo", pageNo);
- request.setAttribute("pageSize", pageSize);
- request.setAttribute("data", result);
-
- request.getRequestDispatcher("index.jsp").forward(request, response);
- }
- }
web.xml:
- <?xml version="1.0" encoding="UTF-8"?>
- <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
- http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
- <servlet>
- <servlet-name>pageTestServlet</servlet-name>
- <servlet-class>com.qiujy.web.servlet.MyServlet</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>pageTestServlet</servlet-name>
- <url-pattern>/testpager</url-pattern>
- </servlet-mapping>
-
- <welcome-file-list>
- <welcome-file>index.jsp</welcome-file>
- </welcome-file-list>
- </web-app>
页面:index.jsp
- <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
- <%@ taglib uri="http://blog.csdn.net/qjyong" prefix="q" %>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
- <title>PagerTag使用示例</title>
- </head>
-
- <body>
- <%
- List<String> list = (List<String>)request.getAttribute("data");
- for(String str : list){
- out.println(str + "<br/>");
- }
- %>
-
- <q:pager pageNo="${pageNo}"
- recordCount="${recordCount}"
- pageSize="${pageSize}"
- url="testpager" />
- </body>
- </html>
访问testpager后的效果图:
分享到:
相关推荐
自定义分页标签最新修改版,使用taglib
一个JSP自定义通用分页标签最新修改版及其使用示例。 可先参看:http://blog.csdn.net/qjyong/archive/2008/11/06/3240303.aspx 的介绍再决定下载。
32. 百度编辑器上传视频播放器由embed改成video标签 33. 添加本地关键词获取API,原官方关键词接口已失效 34. 添加站点自定义字段、栏目自定义字段、单网页自定义字段 35. 添加一键导入微信文章字段 36. 添加Word...
Url重写技术可以使显示给用户的Url不同于实际的Url,Url重写技术被广泛应用于搜索引擎优化(SEO)、网站重组后重定向页面路径以及提供用户友好的Url等方面, AspNetPager支持Url重写技术使您可以自定义分页导航的Url...
这是对上一次版本的重大修改,主要将生成树部分改成了JS,同时增加了几个新的属性设置及上一次版本部分BUG的修改。 同时该版本里增加了一个简单的权限...以后会慢慢增加更多的自定义标签,正在准备写的是一个分页标签!
增加标签列表页Tag.aspx,同时修改tag的URL Rewriter。原来tag的URL是?tag=/,现在是tag.aspx?=。 在后台增加未审核评论管理。 修改RSS订阅地址为feed.axd,同时修改分类及日志的RSS的地址。 修改网页关键字...
【新增】 新增分页标签自定义数量信息 【新增】 栏目目录名称留空时自动转拼音 【新增】 新增上一篇下一篇数组类标签调用 【新增】 增加fileinfo标签,用于内容页获取详细的附件内容支持文件下载 【新增】 增加瀑布...
SiteWeaver6.8在之前版本的基础上,对系统易用性,安全性,兼容性进行了较大的更新与升级。 一、数据库字段与标签,布局调整 SiteWeaver6.8 根据实际情况调整了一些...17、自定义标签里面采用分页时支持条件判断标签.
---版块模式和列表模式自定义修改日志添加修改标志的时间会员登陆验证码增加页面浏览统计功能增加闪光文字标签增加新日志标志对个人书签功能的改进,如增加点击量,快速定位等。自定义保留用户名,防止用户注册自己...