码迷,mamicode.com
首页 > 其他好文 > 详细

自定义标签

时间:2015-09-12 00:42:47      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:

1.创建自定义标签的步骤

   a)创建标签实现类

   b)创建 .tbl 文件,在该文件中配置标签实现类

   c)在 jsp 页面中使用<%@taglib prefix="" uri="" %>指定标签实现类的配置文件 .tbl

a) 创建标签实现类

1)实现SimpleTag接口,该接口的方法有:

public void doTag() 每次使用标签时,Tomcat就会自动调用该方法,是在调用其它自动调用方法后调用

public void setParent(JspTag)

public void getParent()

public void setJspBody(JspFragment) 自动调用

public void setJspContext(JspContext) 自动调用 PageContext是JspContext的子类

2)或者继承SimpleTagSupport类,然后重载doTag()方法

 b)创建 .tbl 文件,在该文件中配置标签实现类

<?xml version="1.0" encoding="UTF-8"?>
<taglib xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd"
    version="2.1">
   
  <description>zoghin test tag</description>
  <display-name>test</display-name>
  <tlib-version>1.0</tlib-version>
  <short-name>c</short-name>
  <uri>http://java.sun.com/jsp/jstl/core</uri>
 <tag>
  <name>test</name>    //标签名,在标签使用需用到
  <tag-class>tags.Tag1</tag-class> //标签实现类 .java 文件路径
  <body-content>scriptless</body-content>  //标签体,如为empty则该标签为空标签
  <attribute>  //标签属性
   <name>test</name> //属性名
   <required>true</required>  //该属性是否是必须的
   <rtexprvalue>true</rtexprvalue> //运行时表达式值,是否支持EL表达式
  </attribute>
 </tag>
</taglib>

   c)在 jsp 页面中使用<%@taglib prefix="" uri="" %>指定标签实现类的配置文件 .tbl

<%@ taglib prefix = "t" uri = "/WEB-INF/tlds/tag1.tld" %> "/WEB-INF/tlds/tag1.tld"为标签的配置文件 .tld 相对于项目所在路径

<t:test test="true"> 使用tag1.tld配置的标签名为test的标签,并给出了test属性,该标签的test属性必须给出,以为tag1.tld配置中<required>true</required> 

自定义标签

标签:

原文地址:http://www.cnblogs.com/zoghin/p/4802330.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!