- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JSP自定义标签开发+TLD文件元素详解.doc
自定义标签开发整理
从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
您可能关注的文档
- HTML规则.ppt
- HTML语言..ppt
- HTML语言个人学习简记.doc
- HTML语言标记.doc
- HTML语言知识.doc
- HTML超文本标记语言.doc
- IC卡密码配置说明.doc
- IDC项目是指什么.doc
- ID联网一体机产品介绍.doc
- IE设置及office控件安装.doc
- 原电池电动势的测定实验报告.pdf
- 与业主、设计、总包、监理和他承包人的配合措施.pdf
- 公司管理流程.pptx
- 2024_2025学年新教材高中地理第1章地球的运动素养综合训练新人教版选择性必修1.doc
- 2024_2025学年新教材高中地理第3章大气的运动第1节常见天气系统第1课时锋与天气分层作业新人教版选择性必修1.doc
- 2024_2025学年新教材高中地理第1章地球的运动第2节地球运动的地理意义第4课时正午太阳高度的变化四季更替和五带划分分层作业课件新人教版选择性必修1.pptx
- 2024_2025学年新教材高中地理第2章地表形态的塑造第2节构造地貌的形成第1课时地质构造与地貌课件新人教版选择性必修1.pptx
- 2024_2025学年新教材高中地理第1章地球的运动问题研究人类是否需要人造月亮课件新人教版选择性必修1.pptx
- 五片小雪花课件.pdf
- 2024_2025学年新教材高中地理第3章大气的运动第2节气压带和风带第1课时气压带和风带的形成分层作业课件新人教版选择性必修1.pptx
文档评论(0)