自定义分页标签
时间:2009-12-13 BlogJava §朱家二少§
近期在做的S2SH项目,因为多处用到分页,BOSS要求小弟将其抽象出来。小弟不才,实际参与开发的经验也就1年。
于是花了点时间将其做成自定义标签供所有需要分页的业务调用。小结一下,供新手参考
自定义标签使用如下:
JSP页面引入:
<%@ taglib uri="/htdz-tag" prefix="htdz-tag"%>
在需要摆放翻页的相关按钮处使用:
<htdz-tag:PagerTag pagesize="${pagesize}" rowcount="${rowcount}" currpagenum="${currpagenum}" action="${action}"/>
以下介绍如何自定义标签:
1.首先是针对自定义标签的描述:
创建WEB-INF/tags/htdz-tag.tld标签描述文件:
<?xml version="1.0" encoding="UTF-8" ?>
<taglib 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-jsptaglibrary_2_0.xsd"
version="2.0">
<description>htdz tag</description>
<display-name>htdz tag</display-name>
<tlib-version>1.0</tlib-version>
<short-name>htdz-tag</short-name>
<uri>/htdz-tag</uri>
<tag>
<!--分页控件使用说明:
1.最全参数用法:<htdz-tag:PagerTag pagesize="${pagesize}" rowcount="${rowcount}" currpagenum="${currpagenum}" action="${action}" className="button_small"/>
1.最简参数用法:<htdz-tag:PagerTag pagesize="${pagesize}" rowcount="${rowcount}" currpagenum="${currpagenum}" action="${action}"/>
参数说明:
1. pagesize为每页记录数(必写)
2. rowcount为总记录数(必写)
3. currpagenum为当前页数(必写)
4. className为分页按钮样式,如果不写,则为默认样式
5. action为URL请求路径(必写)
-->
<description>分页控件</description>
<!--JSP里使用时的标签名-->
<name>PagerTag</name>
<!--用以将自定义标签解析成控件的Java类-->
<tag-class>com.htdz.util.tag.PagerTag</tag-class>
<body-content>JSP</body-content>
<!--每个attribute代表标签的一个属性-->
<attribute>
<description>pagesize:每页条数</description>
<!--属性名-->
<name>pagesize</name>
<!--是否必填属性-->
<required>true</required>
<!--此属性值是否接受EL,<%= 之类的形式-->
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<description>rowcount:总记录数</description>
<name>rowcount</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<description>currpagenum:当前页数</description>
<name>currpagenum</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<description>action:URL请求路径</description>
<name>action</name>
<required>tru
|