要定义自己的标签,首先写个java类,extends TagSupport 或者 implements Tag ,然后在类体里实现自己想要的方法,或者覆盖父类的方法。
我定义的MyTag代码如下:
package com.xll.util;
import java.io.IOException;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.TagSupport;
public class MyTag extends TagSupport{
private String msg;
public void setMsg(String msg){
this.msg = msg;
}
public MyTag(){
System.out.println("MyTag构造方法:一个myTag类的对象被构建了....");
}
public int doStartTag() {
JspWriter out = this.pageContext.getOut();
try {
out.print(msg);
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("对象正在处理开始标记.....");
return EVAL_BODY_INCLUDE;
}
public int doAfterBody() throws JspException{
System.out.println("处理标签体(after body)....");
return SKIP_BODY;
}
public int doEndTag() throws JspException{
System.out.println("对象正在处理结束标记.....");
return EVAL_PAGE;
}
}
然后用MyEclipse 在WEB-INF下创建一个tld文件,代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
"http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
<taglib>
<tlib-version>1.0</tlib-version>
<jsp-version>1.2</jsp-version>
<short-name>my</short-name>
<uri>xll</uri>
<tag>
<name>my</name>
<tag-class>com.xll.util.MyTag</tag-class>
<body-content>empty</body-content>
<attribute>
<name>msg</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
</taglib>
这样的步骤已经可以在你的JSP页面中使用自定义的标签了,使用方法如下:
在JSP页面中,
<%@ taglib prefix="my" uri="xll" %>
然后,
<body>
<my:my msg="自定义标签"/>
</body>
这样的步骤已经差强人意了。
Console打印信息:
MyTag构造方法:一个myTag类的对象被构建了....
对象正在处理开始标记.....
对象正在处理结束标记.....
浏览器页面显示:
自定义标签
分享到:
相关推荐
JSTL自定义标签允许开发者扩展标准标签库的功能,满足特定需求。自定义标签由三部分组成:标签库描述符(TLD),标签处理类(Tag Handler Class)以及标签体(Tag Body)。 1. **标签库描述符(TLD)**:这是一个XML...
**JSTL自定义标签详解** JavaServer Pages Standard Tag Library(JSTL)是用于简化JSP开发的一个标准标签库,它将常见的JSP代码片段封装成了可重用的标签,提高了代码的可读性和可维护性。在JSTL中,我们可以...
它可能涵盖了从创建TLD文件,编写标签处理类,到在JSP页面上实际使用自定义标签的全过程。同时,这个文档可能会提供一些实际的例子,帮助读者理解自定义标签的工作原理。 而"test1.tld"文件则是对一个自定义标签库...
#### 七、自定义标签执行过程 1. **简单标签执行方法**: - `doStartTag`: 处理标签开始部分。 - `doEndTag`: 处理标签结束部分。 - `release`: 清理资源。 2. **属性标签执行方法**: - `doStartTag`: 开始...
JSTL(JavaServer Pages Standard Tag Library)即JavaServer页面的标准标签库,它是一套用于JSP页面的自定义标签库,通过这些标签可以简化JSP页面的开发。本文将对JSTL中常用的标签进行总结。 首先,标签主要用于...
在Java Web开发中,自定义标签(Custom Tags)和自定义函数(Custom Functions)是提高代码复用性和可维护性的重要手段。它们是JSP(JavaServer Pages)标准标签库(JSTL)的一种扩展,允许开发者创建符合特定业务...
本文将深入探讨自定义标签的开发过程,包括其原理、实现步骤以及相关的工具。 首先,自定义标签是JSP标准的一部分,通过JSP Tag Library(标签库)来实现。JSP标签库定义文件(TLD, Tag Library Descriptor)是描述...
学习自定义标签的过程中,会涉及到如何创建处理程序类、编写TLD文件、在JSP页面中使用自定义标签等多个步骤。通过实际项目练习,可以更好地掌握这些技能。 9. **与其他技术的结合** 自定义标签可以与Servlet、...
开发自定义标签的过程一般如下: 1. 创建TLD文件,定义标签属性和行为。 2. 编写标签处理类,实现所需功能。 3. 将标签处理类打包到JAR文件中。 4. 在JSP页面中导入标签库,使用自定义标签。 自定义标签的深入学习...
为了解决这个问题,开发者经常采用自定义标签的方式来简化这一过程。本文将详细探讨如何通过自定义标签实现DWZ表格的分页功能,以提高开发效率和代码可维护性。 首先,我们需要理解DWZ分页的基本原理。DWZ内置的...
自定义标签是Java服务器页面(JSP)技术中一种强大的特性,它允许开发者创建可重用的组件,提高代码的可读性和维护...这个过程展示了如何在JSP中通过自定义标签实现特定功能,如分页,从而提高了代码的复用性和模块化。
对于初学者来说,理解自定义标签的工作原理和创建过程是非常重要的,这将有助于提升开发效率和代码质量。 这个"自定义标签源代码"的学习资源应该包含了TLD文件、处理类源码以及相关的示例JSP页面,通过分析和实践...
自定义标签与JSP标准标签库(JSTL)中的标签类似,但它们可以更好地适应特定的应用场景和项目需求。 **二、自定义标签的组成部分** 1. **TLD(Tag Library Descriptor)文件**:这是定义自定义标签库的元数据文件,...
自定义标签通常用于JSP(JavaServer Pages)环境中,通过扩展JSP标准标签库(JSTL)的功能,使页面逻辑更加清晰,易于维护。下面我们将深入探讨自定义标签的概念、实现步骤以及如何在项目中应用。 首先,自定义标签...
本DLC(Digital Learning Content,数字学习资源)将深入探讨如何创建和使用JSP自定义标签,并通过实例来帮助理解这一过程。 一、JSP自定义标签基础 1.1 JSP标准标签库(JSTL) 在自定义标签之前,我们需要了解...
### jsp自定义标签库知识点详解 #### 一、什么是jsp自定义标签? 1. **概念**:JSP 自定义标签是一种将复杂的功能封装成一个简单的标签的方式,它允许开发者创建可重用的代码组件,这些组件可以在 JSP 页面中像...
本文将深入探讨JSP自定义标签的原理、创建过程以及实际应用。 ### 一、自定义标签概述 在JSP中,自定义标签通常由两个部分组成:标签处理类(Tag Handler Class)和标签库描述符文件(TLD, Tag Library Descriptor...
JSP自定义标签是通过Java语言实现的,它们扩展了JSP标准标签库(JSTL)的功能。`BodyTagSupport`是JSP API提供的一种用于处理包含内容(body)的标签的支持类,它是`TagSupport`的子类。 1. **doStartTag()**:这是...
JSTL是在JSP1.1规范后发展起来的一种技术,该规范支持在JSP中使用自定义标签。随着自定义标签的广泛应用,开发者发现存在大量重复工作的问题,这促使了JSTL的诞生。JSTL旨在提供一套通用的、可重用的标签库,以减少...
它们包含了JSTL和Standard Taglib的源代码,开发者可以通过查看源码来理解内部实现逻辑,这对于学习和调试自定义标签或者解决某些问题非常有帮助。 为了在项目中使用JSTL,你需要将这两个jar包添加到项目的类路径中...