自定义标签类供前台处理使用,由于是Spring框架,自定义标签时采用继承自RequestContextAwareTag类。
RequestContextAwareTag类的类关系如下图:
该类继承自TagSupport,而TagSupport来自javax.servlet.jsp.tagext.TagSupport。
1、首先,开发一个标签类,在该标签类中实现该标签的功能。
由于自定义的标签类需要继承RequestContextAwareTag类,故在实现标签功能时需要重写父类中的方法。
RequestContextAwareTag有几个比较重要的方法:
doStartTag():doStartTag()方法是遇到标签开始时会执行的方法。
doEndTag()方法是在遇到标签结束时呼叫的方法
doStartTagInternal:与doStartTag方法相同,Called by doStartTag to perform the actual work.
基于以上,在自定义标签类中,需定义属性变量,重写了doStartTagInternal()方法,
定义的属性变量,即为标签使用时的属性,重写的方法即根据标签属性值,实现标签功能。
如下图:
2、配置tld文件,在引用标签时使用。
指定了标签名称,标签实现类,标签属性及该标签是否为必须。
3、在web.xml中加载该配置文件
- <taglib>
- <taglib-uri>http://www.chrhc.com/customTag</taglib-uri>
- <taglib-location>/WEB-INF/tld/chrhc.tld(你自己的tld文档路径)</taglib-location>
对于<taglib-uri>的属性,应与配置文件中的<uri>属性一致。
或者直接在页面引入:
<%@ taglib uri="/WEB-INF/tld/chrhc.tld" prefix="chr" %>
对于tld配置文件的说明:
<tlib-version>1.0</tlib-version>
<jsp-version>1.2</jsp-version>
<short-name>chr</short-name>
<uri>http://www.chrhc.com/customTag</uri>
<display-name>Custom Tag Example</display-name>
<description>Custom tag examples</description>
在自定义标签头部,需有如上的相关配置,其中,<short-name>为标签的简写,在引用标签时则可以以如下方式引用 <chr:ProcessKeyValue>。
如此,则可在前台使用自己定义的标签了。
相关推荐
在实际开发中,有时我们需要根据项目需求实现特定的功能,比如动态生成SQL或者进行复杂的业务逻辑处理,这时MyBatis的自定义标签功能就显得尤为重要。 自定义标签是MyBatis框架的一大特色,它允许我们扩展XML映射...
在ThinkPHP中,自定义标签(Tag Lib)是一种强大的特性,允许开发者扩展模板引擎的功能,使其更符合项目需求。下面将详细解释如何在ThinkPHP 3.0版本中实现自定义标签及其使用方法。 1. **自定义标签的作用** ...
在JavaServer Pages (JSP) 技术中,自定义标签是扩展JSP功能的关键手段,它允许开发者创建可重用的组件,提高代码的可维护性和可读性。本实例将深入探讨如何实现一个简单的JSP自定义标签。 首先,自定义标签的实现...
3. 使用自定义标签:在模板文件中,你可以像使用内置标签一样使用你的自定义标签。例如,如果你注册了一个名为`myCustomTag`的自定义指令,你可以在模板中这样使用:`...
在 Struts 中,自定义标签是提供一种灵活的方式,使得视图层(通常为 JSP 页面)能够更好地与业务逻辑交互,从而提高代码的可读性和可维护性。本文将深入探讨如何在 Struts 中实现自定义标签。 一、自定义标签概述 ...
在Java Web开发中,自定义标签(Custom Tags)是一个强大的工具,它允许开发者创建可重用的组件,提高代码的可读性和维护性。自定义标签是JSP标准标签库(JSTL)的一种扩展,它能将复杂的业务逻辑封装起来,使JSP...
在JSP(JavaServer Pages)开发中,自定义标签是一种扩展JSP功能的强大工具,它允许开发者创建可重用的代码组件,以提高代码的可读性和可维护性。本篇学习笔记将深入探讨JSP自定义标签的相关概念、创建方法以及实际...
每个自定义标签与其对应的开始标签和结束标签一一对应。 3. **定义转换逻辑**: - 获取`body`元素的内联HTML内容。 - 遍历自定义标签数组,对于每一个自定义标签,使用正则表达式进行全局搜索并替换(即`gi`标志)...
自定义标签是Freemarker的一个重要特性,它允许开发者扩展模板语言的功能,以满足特定项目的需求。本篇文章将对Freemarker自定义标签进行深入的总结。 1. **自定义标签基础** 自定义标签在Freemarker中被称为`...
自定义标签通常由两个主要部分组成:标签库描述符(TLD,Tag Library Descriptor)和标签处理类(Tag Handler Class)。TLD是XML文件,用于定义标签的元数据,包括标签的名字、属性、返回的值类型等。而标签处理类则...
自定义标签是Struts2框架中的一个重要特性,它允许开发者创建自己的标签库,以更直观、易读的方式在JSP页面中处理业务逻辑。下面将详细介绍Struts2自定义标签的相关知识点。 首先,理解自定义标签的作用。在传统的...
自定义标签通常被用来封装复杂的业务逻辑,减少JSP页面中的Java代码,使得视图层更加清晰。在本篇文章中,我们将深入探讨自定义标签的原理、实现方式以及其在实际项目中的应用。 1. **自定义标签的概念** 自定义...
总之,JSP自定义标签是提高JSP开发效率和代码复用性的重要工具,通过创建和使用自定义标签,我们可以构建出更加模块化、易于维护的Web应用程序。结合Tomcat这样的Servlet容器,可以快速地部署和测试这些自定义组件。
### 自定义标签学习笔记 #### 一、什么是自定义标签? 自定义标签是JSP(Java Server Pages)中的一种功能,允许开发者创建可重用的组件。这些组件封装了特定的功能,可以在不同的JSP页面中复用,从而提高开发效率...
3. **在JSP页面中使用自定义标签**:在JSP页面中,你可以通过`<%@ taglib %>`指令引入自定义标签库,并用`<mytag:tagname>`的形式调用自定义标签。 4. **配置Web应用**:确保web.xml文件中配置了对JSTL的支持,包括...
自定义标签由三部分组成:标签库描述符(TLD, Tag Library Descriptor)、标签处理类(Tag Handler Class)以及标签库(Tag Library)。TLD是XML文件,用于定义标签的属性、行为和关联的处理类。标签处理类是实现...
自定义标签是JSP(JavaServer Pages)规范的一部分,通过扩展JSP语法,可以将复杂的业务逻辑封装起来,使页面更加简洁易懂。 首先,我们要理解自定义标签的工作原理。自定义标签其实是一个预编译的Java类,它在JSP...
自己写的自定义标签库,实现JSTL常用的功能。
自定义标签的实现通常涉及三个主要部分:标签库描述符(TLD)、标签处理类(Tag Handler Class)以及实际的JSP页面中的标签使用。 1. **标签库描述符(TLD)**: TLD是一个XML文件,它定义了自定义标签的元数据,...
自定义标签由两部分组成:标签库描述符文件(TLD,Tag Library Descriptor)和标签处理类(Tag Handler Class)。TLD文件定义了标签的元数据,包括标签的名称、属性、返回类型等信息,通常以`.tld`为扩展名。而标签...