`
KuangYeYaZi
  • 浏览: 56232 次
文章分类
社区版块
存档分类
最新评论

jsp 自定义标签 学习笔记 (1)

 
阅读更多

http://zgqhyh.iteye.com/blog/198249

 

jsp 自定义标签 学习笔记 (1) 
简单标签的学习 

1、标签的功能实现是通过一个具体类来实现的,这个类要实现一个接口。而这个类被称作标签处理器(tag handler) 
2、标签的功能特性(如标签的名称及属性)都被定义在一个标签库描述符文件(tag library descriptor)TLD中. 
3、当标签最终在页面上被使用时,标签处理器的一个实例就会被创建,并且它的方法会被调用 
4、SimpleTag接口 
  这个接口 是在jsp2.0规范中定义的。它定义了简单标签以及jsp页面之间的关系。 
  这个接口本身服务以下两个目的: 
  (1) 为简单标签提供运行时环境 
  (2)它提供了一个方法,通过这个方法来执行简单标签处理器所封装的功能 
下面是这个接口的代码 

Java代码  收藏代码
  1. package javax.serlet.jsp.tagext;  
  2. public interface SimpleTag extends JspTag{  
  3.   public void doTag() throws JspException,IOException;  
  4.   public JspTag getParent();  
  5.   public void setJspBody(JspFrgment jspBody);  
  6.   public void setJspContext(JspContext jspContext);  
  7.   public void setParent(JspTag parent);  
  8. }  


各个方法的执行顺序,是由jsp规范确定的。 
 

5、SimpleTagSupport 类 
为了方便,jsp规范提供了一个类,javax.servlet.jsp.tagext.SimpleTagSupport 类,这个类提供了SimpleTag接口的实现。现在,只需要继承这个类,并且 重写doTag()方法即可。 
6、一个简单标签的例子 
功能是在页面上显示出当前的时间。 
(1)标签处理器 

Xml代码  收藏代码
  1. package com.mycom.cn.tag;  
  2. import java.io.IOException;  
  3. import java.text.DateFormat;  
  4. import java.util.Date;  
  5.   
  6. import javax.servlet.jsp.JspException;  
  7. import javax.servlet.jsp.tagext.SimpleTagSupport;  
  8.   
  9. public class DateTimeTag extends SimpleTagSupport{  
  10.     public void doTag() throws JspException, IOException{  
  11.         DateFormat df = DateFormat.getDateTimeInstance(  
  12.                 DateFormat.MEDIUM,DateFormat.MEDIUM);  
  13.         getJspContext().getOut().write(df.format(new Date()));  
  14.     }  
  15. }  


7、tld文件 

Java代码  收藏代码
  1. <?xml version="1.0" encoding="GBK" ?>  
  2. <!DOCTYPE taglib  
  3.   PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"  
  4.   "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">  
  5. <taglib>  
  6.     <description>对此标签库的简单描述</description>  
  7.     <jsp-version>2.0</jsp-version>  
  8.     <tlib-version>1.0</tlib-version>  
  9.     <short-name>testTag</short-name>  
  10.     <uri>http://www.mycom.cn</uri>    
  11.     <tag>  
  12.         <name>datetime</name>  
  13.         <tag-class>com.mycom.cn.tag.DateTimeTag</tag-class>  
  14.         <body-content>empty</body-content>  
  15.         <description>输出当时日期和时间</description>  
  16.     </tag>      
  17. </taglib>  


7、布署 
class文件要放在classpath下,tld文件放在WEB-IN下的目录中 
8、在页面上引用 
<

Java代码  收藏代码
  1. %@ taglib uri="/WEB-INF/testtag.tld" prefix="testTag" %>  
  2. <testTag:datetime/>  
分享到:
评论

相关推荐

    JSP自定义标签学习笔记

    本篇学习笔记将深入探讨JSP自定义标签的相关概念、创建方法以及实际应用。 一、概述 1.1 使用简单标签机制 JSP自定义标签提供了类似HTML标签的语法结构,通过自定义标签,开发者可以封装复杂的Java代码,使得页面...

    自定义标签学习笔记

    ### 自定义标签学习笔记 #### 一、什么是自定义标签? 自定义标签是JSP(Java Server Pages)中的一种功能,允许开发者创建可重用的组件。这些组件封装了特定的功能,可以在不同的JSP页面中复用,从而提高开发效率...

    吉林大学珠海学院JSP&Servlet学习笔记(第二版)课后答案

    吉林大学珠海学院JSP&Servlet学习笔记(第二版)课后答案 本资源为吉林大学珠海学院JSP&Servlet学习笔记(第二版)的课后答案,涵盖了JSP和Servlet相关的知识点。本笔记共分为九章,每章节都包含了相关的问题答案,...

    JSP网络编程学习笔记源代码 part2

    第五篇为“标签语言和表达式语言”,主要讲述JSP的标签技术,JSP提供的标准标签库JSTL的用法及用户如何自定义自己的标签库;第六篇为“Web应用高级专题”,主要讲述Servlet过滤器、JSP异常处理、JSP日志、认证和安全...

    [JSP&Servlet;学习笔记(第2版)]

    2. **可扩展性**:通过Java插件和自定义标签库,可以轻松扩展功能。 3. **MVC模式支持**:适合于模型-视图-控制器架构,提高代码组织和复用。 **学习JSP与Servlet的建议:** - 熟悉Java基础,因为它们是JSP和...

    jsp完整学习笔记(完整版)

    **JSP完整学习笔记概述** 本笔记是作者在专业培训学校学习JSP的总结,旨在为读者提供一个全面了解和掌握JavaServer Pages (JSP) 技术的资源。JSP是Java平台上的动态网页技术,它允许开发人员将静态HTML内容与动态...

    JSP&Servlet学习笔记(第2版)_打印版

    根据提供的文件信息,标题为“JSP&Servlet学习笔记(第2版)_打印版”,描述指出文档经过空白边裁剪处理以便于打印。虽然提供的部分内文无法直接转化为明确的知识点,但我们可以根据标题和描述推测该文档的主要内容,...

    jsp2.0 学习笔记+完整源码

    **JSP 2.0 学习笔记及完整源码详解** JSP 2.0(JavaServer Pages)是Java平台上的动态网页技术,它允许开发者在HTML、XML或其他标记语言文档中嵌入Java代码,以实现服务器端的动态内容生成。本资料包包括了JSP 2.0...

    JSP学习笔记 jsp学习资料

    本资料包“JSP学习笔记”提供了丰富的学习资源,适用于初学者和有一定经验的开发者,用以提升对JSP的理解和应用能力。 ### 1. JSP基本概念 - **页面组成**:JSP页面由静态内容(HTML、CSS、JavaScript)和动态内容...

    Servlet&JSP;学习笔记源代码

    这份"Servlet&JSP学习笔记源代码"是由林信良编著,提供了丰富的实例代码,旨在帮助学习者深入理解这两种技术。 Servlet是Java编程语言的一个接口,允许Java代码与HTTP服务器进行交互。它扩展了服务器的功能,使得...

    韩顺平jsp九讲笔记

    8. **自定义标签**:通过创建Tag Library Descriptor (TLD)文件和实现自定义标签类,可以创建自己的JSP标签,提高代码复用性。 9. **MVC模式与JSP**:在Web开发中,JSP常作为MVC(Model-View-Controller)架构的...

    JSP 完全学习笔记 全

    **JSP完全学习笔记概述** JSP(JavaServer Pages)是一种动态网页技术,它结合了HTML、Java代码和脚本语言,使得开发者可以方便地创建交互式的Web应用程序。本学习笔记全面涵盖了JSP的关键概念、核心语法、常用标签...

    JSP学习笔记截屏1

    在1.docx文档中,可能包含了更详细的讲解、代码示例以及对某些复杂概念的解析,例如JSP的转发和重定向、自定义标签的使用、过滤器和监听器等。这些内容都是深化JSP技能的关键点,建议读者仔细研读,以便全面掌握JSP...

    新一代JSP网络编程笔记

    3. 标签库指令(taglib directive):引入自定义标签库,使页面更加简洁、模块化。 三、JSP脚本元素 1. 脚本声明(Scriptlet):用于编写Java代码,通常用来处理服务器端的逻辑。 2. 表达式(Expression):将...

    JSP_学习笔记

    【JSP 学习笔记】 JSP(Java Server Pages)是一种基于Java技术的服务器端脚本语言,用于创建动态Web内容。它属于Java EE(Java Platform, Enterprise Edition)组件,核心在于将静态HTML与动态Java代码相结合,...

    j2ee学习笔记-j2ee学习笔记

    **J2EE学习笔记概述** J2EE(Java 2 Platform, Enterprise Edition)是一个由Sun Microsystems(现已被Oracle收购)开发的平台,主要用于构建企业级的分布式应用系统。它提供了服务器端组件模型、服务和API,支持...

    Jsp_Servlet学习课堂笔记

    **自定义标签库(Tag Libraries)**允许开发者创建自己的JSP标签,增强代码的可读性和复用性。TLD(Tag Library Descriptor)文件定义了标签的行为,而标签处理器类实现这些行为。 在本学习资料中,"JSP.txt"和...

    jsp实用教程笔记

    3. taglib指令:引入自定义标签库。 三、JSP脚本元素 1. Scriptlet:在中编写Java代码,通常用于处理逻辑。 2. Expression Language (EL):一种简化访问JavaBean属性和集合数据的语言,如${expression}。 3. ...

    《Jsp&Servlet学习笔记 第二版》源码

    源码中可能包含各种类型的JSP页面,如使用JSP表达式语言(EL)来简化页面数据绑定,使用JSP标签库(Tag Libraries)来实现自定义功能,或者利用JSP声明式编程来处理逻辑。 Servlet,则是Java Web应用中的服务器端...

    jsp学习笔记让JSP更简单

    **JSP(Java Server Pages)学习笔记:让JSP更简单** JSP是Java平台上的一个强大工具,用于创建动态web应用程序。它结合了HTML、CSS、JavaScript等前端技术与Java代码,使得开发者可以在服务器端处理数据并生成HTML...

Global site tag (gtag.js) - Google Analytics