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 使用简单标签机制 JSP自定义标签提供了类似HTML标签的语法结构,通过自定义标签,开发者可以封装复杂的Java代码,使得页面...
### 自定义标签学习笔记 #### 一、什么是自定义标签? 自定义标签是JSP(Java Server Pages)中的一种功能,允许开发者创建可重用的组件。这些组件封装了特定的功能,可以在不同的JSP页面中复用,从而提高开发效率...
吉林大学珠海学院JSP&Servlet学习笔记(第二版)课后答案 本资源为吉林大学珠海学院JSP&Servlet学习笔记(第二版)的课后答案,涵盖了JSP和Servlet相关的知识点。本笔记共分为九章,每章节都包含了相关的问题答案,...
第五篇为“标签语言和表达式语言”,主要讲述JSP的标签技术,JSP提供的标准标签库JSTL的用法及用户如何自定义自己的标签库;第六篇为“Web应用高级专题”,主要讲述Servlet过滤器、JSP异常处理、JSP日志、认证和安全...
2. **可扩展性**:通过Java插件和自定义标签库,可以轻松扩展功能。 3. **MVC模式支持**:适合于模型-视图-控制器架构,提高代码组织和复用。 **学习JSP与Servlet的建议:** - 熟悉Java基础,因为它们是JSP和...
**JSP完整学习笔记概述** 本笔记是作者在专业培训学校学习JSP的总结,旨在为读者提供一个全面了解和掌握JavaServer Pages (JSP) 技术的资源。JSP是Java平台上的动态网页技术,它允许开发人员将静态HTML内容与动态...
根据提供的文件信息,标题为“JSP&Servlet学习笔记(第2版)_打印版”,描述指出文档经过空白边裁剪处理以便于打印。虽然提供的部分内文无法直接转化为明确的知识点,但我们可以根据标题和描述推测该文档的主要内容,...
**JSP 2.0 学习笔记及完整源码详解** JSP 2.0(JavaServer Pages)是Java平台上的动态网页技术,它允许开发者在HTML、XML或其他标记语言文档中嵌入Java代码,以实现服务器端的动态内容生成。本资料包包括了JSP 2.0...
本资料包“JSP学习笔记”提供了丰富的学习资源,适用于初学者和有一定经验的开发者,用以提升对JSP的理解和应用能力。 ### 1. JSP基本概念 - **页面组成**:JSP页面由静态内容(HTML、CSS、JavaScript)和动态内容...
这份"Servlet&JSP学习笔记源代码"是由林信良编著,提供了丰富的实例代码,旨在帮助学习者深入理解这两种技术。 Servlet是Java编程语言的一个接口,允许Java代码与HTTP服务器进行交互。它扩展了服务器的功能,使得...
8. **自定义标签**:通过创建Tag Library Descriptor (TLD)文件和实现自定义标签类,可以创建自己的JSP标签,提高代码复用性。 9. **MVC模式与JSP**:在Web开发中,JSP常作为MVC(Model-View-Controller)架构的...
**JSP完全学习笔记概述** JSP(JavaServer Pages)是一种动态网页技术,它结合了HTML、Java代码和脚本语言,使得开发者可以方便地创建交互式的Web应用程序。本学习笔记全面涵盖了JSP的关键概念、核心语法、常用标签...
在1.docx文档中,可能包含了更详细的讲解、代码示例以及对某些复杂概念的解析,例如JSP的转发和重定向、自定义标签的使用、过滤器和监听器等。这些内容都是深化JSP技能的关键点,建议读者仔细研读,以便全面掌握JSP...
3. 标签库指令(taglib directive):引入自定义标签库,使页面更加简洁、模块化。 三、JSP脚本元素 1. 脚本声明(Scriptlet):用于编写Java代码,通常用来处理服务器端的逻辑。 2. 表达式(Expression):将...
【JSP 学习笔记】 JSP(Java Server Pages)是一种基于Java技术的服务器端脚本语言,用于创建动态Web内容。它属于Java EE(Java Platform, Enterprise Edition)组件,核心在于将静态HTML与动态Java代码相结合,...
**J2EE学习笔记概述** J2EE(Java 2 Platform, Enterprise Edition)是一个由Sun Microsystems(现已被Oracle收购)开发的平台,主要用于构建企业级的分布式应用系统。它提供了服务器端组件模型、服务和API,支持...
**自定义标签库(Tag Libraries)**允许开发者创建自己的JSP标签,增强代码的可读性和复用性。TLD(Tag Library Descriptor)文件定义了标签的行为,而标签处理器类实现这些行为。 在本学习资料中,"JSP.txt"和...
3. taglib指令:引入自定义标签库。 三、JSP脚本元素 1. Scriptlet:在中编写Java代码,通常用于处理逻辑。 2. Expression Language (EL):一种简化访问JavaBean属性和集合数据的语言,如${expression}。 3. ...
源码中可能包含各种类型的JSP页面,如使用JSP表达式语言(EL)来简化页面数据绑定,使用JSP标签库(Tag Libraries)来实现自定义功能,或者利用JSP声明式编程来处理逻辑。 Servlet,则是Java Web应用中的服务器端...
**JSP(Java Server Pages)学习笔记:让JSP更简单** JSP是Java平台上的一个强大工具,用于创建动态web应用程序。它结合了HTML、CSS、JavaScript等前端技术与Java代码,使得开发者可以在服务器端处理数据并生成HTML...