文档详情

JSP自定义标签开发TLD文件元素详解.doc

发布:2017-06-08约2.48千字共4页下载文档
文本预览下载声明
自定义标签开发整理 从jsp1.1开始就可以在jsp页面中使用自定义标签了,使用自定义标签不但可以实现代码重用,而且可以使jsp代码更简洁。Jsp2.0的标签扩展API中又增加了SimpleTag接口和其实现类SimpleTagSupport。 标签扩展API层次结构: TLD文件元素详解: 每个自定义标签都必须在TLD文件中声明,TLD文件只不过是一个XML文件。根是taglib,它包含一个或者多个tag标签,该元素用来声明定制标签。 TLD文件中的 标  签 含  义 taglib TLD文件的根 tlib-version 此标签库的版本 jsp-version 此标签库依赖的JSP版本。 short-name description display-name icon uri validator listener function 当在JSP中使用标签时,此标签库首选或者建议的前缀。当然可以完全忽略这个建议 图形工具可显示的一个简短名称 图形工具可显示的图标 指定使用该标签库中标签的URI 关于该库的TagLibraryValidator信息 指定事件监听器类 定义一个在EL中使用的函数 tag 定义一个标签 tag元素的子 标  签 含  义 display-name icon name 指定针对标签的信息 开发工具用于显示的一个简短名称 可被开发工具使用的图标 标签名称 tag-class tei-class Java标签处理器类的名称。注意这是处理器类的全限定名称,比如com..tag.TableTag Javax.servlet.jsp.tagext.TagExtraInfo类的一个可选子类 body-content variable example 此标签的主体部分的内容。 定义脚本变量信息 使用该标签例子的可选的非正式描述 attribute 包含了此标签的一个属性的元数据 attribute的子 标  签 含  义 name 有关描述的文本信息 在jsp标签中使用的属性名称 required rtexprvalue type 指定属性是必须的还是可选的,默认为false,表示属性可选。如果该值为true,则jsp页面必须为该属性提供一个值。可能的值true、false、yes、no 指定属性是否能接受请求时表达式的值,默认为false,表示不能接受请求时表达式的值。可能值:true、false、yes、no 属性的数据类型,该元素只能用在当rtexprvalue设置为true时。它指定当使用请求时属性表达式(%= %)返回类型。默认string 实例(继承SimpleTagSupport类方式): 编写一个DateTag标签,输出系统时间。c1:date/,输出的格式:2011年11月9日 step1: 写一个java类,继承SimpleTagSupport类 step2: override doTag()方法,在该方法里,实现相应的处理逻辑 package mytag; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import javax.servlet.jsp.JspException; import javax.servlet.jsp.JspWriter; import javax.servlet.jsp.PageContext; import javax.servlet.jsp.tagext.SimpleTagSupport; public class DateTag extends SimpleTagSupport{ @Override public void doTag() throws JspException, IOException { PageContext ctx = (PageContext)getJspContext(); JspWriter out = ctx.getOut(); SimpleDateFormat sdf = new SimpleDateFormat(yyyy年MM月dd日); out.println(sdf.format(new Date())); } } step3: 在.tld文件当中,描述该标签 ?xml version=1.0 encoding=UTF-8 ? taglib xmlns=/xml/ns/j2ee xmlns:xsi=/2001/XMLSchema-instance xsi:schemaLocation=/xml/ns/j2ee /xml/ns/j2ee
显示全部
相似文档