您的位置:首页 > Web前端 > JavaScript

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

2017-04-05 10:01 239 查看
自定义标签开发整理  从jsp1.1开始就可以在jsp页面中使用自定义标签了,使用自定义标签不但可以实现代码重用,而且可以使jsp代码更简洁。Jsp2.0的标签扩展API中又增加了SimpleTag接口和其实现类SimpleTagSupport。

TLD文件元素详解:  

每个自定义标签都必须在TLD文件中声明,TLD文件只不过是一个XML文件。根元素是<taglib>,它包含一个或者多个<tag>标签,该元素用来声明定制标签。<taglib>元素中只有<tlib-version>元素是必须的,其他都是可选的。  TLD文件中的元素  标  签 含  义  <taglib> TLD文件的根元素 <tlib-version>  此标签库的版本  <jsp-version> 此标签库依赖的JSP版本。  <short-name>   <description> <display-name>
<icon> <uri>  当在JSP中使用标签时,此标签库首选或者建议的前缀。当然可以完全忽略这个建议 描述信息  图形工具可显示的一个简短名称 图形工具可显示的图标 指定使用该标签库中标签的URI。<validator> <listener> <function> 关于该库的TagLibraryValidator信息 指定事件监听器类  定义一个在EL中使用的函数 <tag>  定义一个标签<description> <display-name> <icon> <name> 指定针对标签的信息  开发工具用于显示的一个简短名称
可被开发工具使用的图标 标签名称  <tag-class>   <tei-class> Java标签处理器类的名称。注意这是处理器类的全限定名称,比如com.xx.tag.TableTag  Javax.servlet.jsp.tagext.TagExtraInfo类的一个可选子类  <body-content> 

  <variable> <example> 此标签的主体部分的内容。其值可为 scriptless\tagdependent\empty,默认为empty 定义脚本变量信息  使用该标签例子的可选的非正式描述 <attribute>  包含了此标签的一个属性的元数据

实例(继承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()));
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: