http://zgqhyh.iteye.com/blog/198249
jsp 自定义标签 学习笔记 (1)
简单标签的学习
1、标签的功能实现是通过一个具体类来实现的,这个类要实现一个接口。而这个类被称作标签处理器(tag handler)
2、标签的功能特性(如标签的名称及属性)都被定义在一个标签库描述符文件(tag library descriptor)TLD中.
3、当标签最终在页面上被使用时,标签处理器的一个实例就会被创建,并且它的方法会被调用
4、SimpleTag接口
这个接口 是在jsp2.0规范中定义的。它定义了简单标签以及jsp页面之间的关系。
这个接口本身服务以下两个目的:
(1) 为简单标签提供运行时环境
(2)它提供了一个方法,通过这个方法来执行简单标签处理器所封装的功能
下面是这个接口的代码
- package javax.serlet.jsp.tagext;
- public interface SimpleTag extends JspTag{
- public void doTag() throws JspException,IOException;
- public JspTag getParent();
- public void setJspBody(JspFrgment jspBody);
- public void setJspContext(JspContext jspContext);
- public void setParent(JspTag parent);
- }
各个方法的执行顺序,是由jsp规范确定的。
5、SimpleTagSupport 类
为了方便,jsp规范提供了一个类,javax.servlet.jsp.tagext.SimpleTagSupport 类,这个类提供了SimpleTag接口的实现。现在,只需要继承这个类,并且 重写doTag()方法即可。
6、一个简单标签的例子
功能是在页面上显示出当前的时间。
(1)标签处理器
- package com.mycom.cn.tag;
- import java.io.IOException;
- import java.text.DateFormat;
- import java.util.Date;
- import javax.servlet.jsp.JspException;
- import javax.servlet.jsp.tagext.SimpleTagSupport;
- public class DateTimeTag extends SimpleTagSupport{
- public void doTag() throws JspException, IOException{
- DateFormat df = DateFormat.getDateTimeInstance(
- DateFormat.MEDIUM,DateFormat.MEDIUM);
- getJspContext().getOut().write(df.format(new Date()));
- }
- }
7、tld文件
- <?xml version="1.0" encoding="GBK" ?>
- <!DOCTYPE taglib
- PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
- "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
- <taglib>
- <description>对此标签库的简单描述</description>
- <jsp-version>2.0</jsp-version>
- <tlib-version>1.0</tlib-version>
- <short-name>testTag</short-name>
- <uri>http://www.mycom.cn</uri>
- <tag>
- <name>datetime</name>
- <tag-class>com.mycom.cn.tag.DateTimeTag</tag-class>
- <body-content>empty</body-content>
- <description>输出当时日期和时间</description>
- </tag>
- </taglib>
7、布署
class文件要放在classpath下,tld文件放在WEB-IN下的目录中
8、在页面上引用
<
- %@ taglib uri="/WEB-INF/testtag.tld" prefix="testTag" %>
- <testTag:datetime/>
相关推荐
本人自行研究JSP自定义标签的学习笔记 目录如下: 目录 一、概述 1 1.1 使用简单标签机制 2 1.2 使用标签文件 3 二 、自定义标签简介 3 2.1 自定义标签概念 3 2.2 标签相关概念 3 2.3 如何创建自定义标签 3 三、自...
自定义标签学习笔记1
第五篇为“标签语言和表达式语言”,主要讲述JSP的标签技术,JSP提供的标准标签库JSTL的用法及用户如何自定义自己的标签库;第六篇为“Web应用高级专题”,主要讲述Servlet过滤器、JSP异常处理、JSP日志、认证和安全...
关于Jsp以及Servlet的学习笔记,包含有JavaBean 自定义标签库等等一系列重点的概念以及代码 绝对超值
Servlet,请求和响应机制,jsp动态网页技术,会话跟踪 javaBean,JSP常用标签和自定义标签,AJAX实例,以及监听器,过滤器和BaseServlet和分页
fckeditor学习笔记 FCKEditor的调用: ...在jsp中通过自定义标签调用 注:拷jar包 fckeditor-java-2.4.1\fckeditor-java-core-2.4.1.jar fckeditor-java-2.4.1\lib\*; slf4j-simple-1.5.2.jar;
taglib指令:使用标签库定义新的自定义标签,在jsp页面中启动自定行为 page指令语法 <%@page 属性1=”属性值” 属性2=”属性值1,属性值2″ 属性n=”属性值n”%> jsp注释 在jsp页面的注释。 HTML的注释: &...
JSP学习笔记..................236 JSP前言.................236 第一章 Introduction to JSP...............238 第二章 Creating,Deploying and Executing a JSP..................239 第三章 JSP Scriplets,...
JSP学习笔记..................236 JSP前言.................236 第一章 Introduction to JSP...............238 第二章 Creating,Deploying and Executing a JSP..................239 第三章 JSP Scriplets,...
包含内容 01web.doc 02Servlet.doc 03request&response.doc ... 07自定义标签.doc 08注册案例.doc 09sql.doc 10jdbc.doc 11jdbc.doc 12jdbc.doc 13jdbc.doc 14过滤器.doc 15uploadListener.doc
\contentsline {chapter}{Contents}{2}{section*.1} {1}Java基础}{17}{chapter.1} {1.1}基本语法}{17}{section.1.1} {1.2}数字表达方式}{17}{section.1.2} {1.3}补码}{19}{section.1.3} {1.3.1}总结}{23}{...
(十七) Swing 学习笔记 108 Swing API 包括18个公共包: 108 例程1.1 HelloWorldSwing.java 109 例程2.2 HelloWorldJFrame.java 110 (十八) 动态加载文件树的java程序 111 FileSystemTree.java源代码 112 //内部类 ...