早期 JSP 自定义标签类开发过程略微复杂一些,但 JSP 2 已经简化了这个过程,它只要自定义标签类都必须继承一个父类:javax.servlet.jsp.tagext.SimpleTagSupport,除此之外,JSP 自定义标签类还有如下要求。
1、如果标签类包含属性,每个属性都有对应的 getter 和 setter 方法。
2、重写 doTag() 方法,这个方法负责生成页面内容。
下面写个例子:写一个执行标签体的类。
1、先写一个标签处理器的Java类:
package cn.simpletag; import java.io.IOException; import javax.servlet.jsp.JspException; import javax.servlet.jsp.tagext.JspFragment; import javax.servlet.jsp.tagext.SimpleTagSupport; /** * 标签体的执行 * Porject Name:tag * File Name:Demo1.java * Description: * Author:zhangjl * Date:2014-1-19 * Copyright (c) 2014,web_bckf@126.com All Rights Reserved. */ public class Demo1 extends SimpleTagSupport { @Override public void doTag() throws JspException, IOException { /* * 获取标签体 */ JspFragment jf=getJspBody(); /* * invoke执行标签体,其实这个jf.invoke(null);也是只想能够标签体,默认就是创建了一个写给浏览器的流。 */ jf.invoke(this.getJspContext().getOut()); } }
2、在写一个映射Java类的tld文件
<?xml version="1.0" encoding="UTF-8" ?> <taglib xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd" version="2.0"> <description>JSTL 1.1 functions library</description> <display-name>JSTL functions sys</display-name> <tlib-version>1.1</tlib-version> <short-name>simplefns</short-name> <uri>//simple</uri> <tag> <name>demo1</name> <tag-class>cn.simpletag.Demo1</tag-class> <body-content>scriptless</body-content> </tag> </taglib>
3、在jsp页面展示实现的功能
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib uri="//simple" prefix="simplefns"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>简单标签</title> </head> <body> <simplefns:demo1> aaaaaaaa </simplefns:demo1> </body> </html>
相关推荐
四、自定义标签的应用示例 在`teststruts2`项目中,我们可能会有一个名为`CustomTagExampleAction`的Action类,它处理与自定义标签相关的业务逻辑。然后,在结果页面(比如`result.jsp`)中,我们可以这样使用自定义...
四、使用自定义标签 完成上述步骤后,就可以在 JSP 页面中使用自定义标签了。通过引入标签库的 URI,我们可以像使用内置标签一样使用自定义标签。例如: ```jsp ``` 五、自定义标签示例 假设我们有一个自定义...
在JSP(JavaServer Pages)开发中,自定义标签是一种扩展JSP功能的强大工具,它允许开发者创建可重用的代码组件,以提高代码的可读性和可维护性。本篇学习笔记将深入探讨JSP自定义标签的相关概念、创建方法以及实际...
四、JSTL与自定义标签的结合 JSTL(JavaServer Pages Standard Tag Library)是JSP的一种标准标签库,包括核心标签、XML标签、函数标签和JDBC标签等。JSTL中的某些标签功能可能与自定义标签重复,但在实际开发中,...
在Java Web开发中,自定义标签(Custom Tags)是一个强大的工具,它允许开发者创建可重用的组件,提高代码的可读性和维护性。自定义标签是JSP标准标签库(JSTL)的一种扩展,它能将复杂的业务逻辑封装起来,使JSP...
四、在JSP页面中使用自定义标签 在JSP页面中引入自定义标签库后,可以通过`<%@ taglib %>`指令来引用TLD文件,然后像使用HTML标签一样使用自定义标签。 五、自定义标签实例 一个简单的HelloWorld自定义标签可能如下...
在Java Web开发中,自定义标签(Custom Tags)是一种强大的工具,它允许开发者创建可重用的组件,提高代码的可读性和维护性。自定义标签可以看作是JSP页面上的迷你Java程序,它们封装了复杂的逻辑,使得视图层更加...
### 自定义标签学习笔记 #### 一、什么是自定义标签? 自定义标签是JSP(Java Server Pages)中的一种功能,允许开发者创建可重用的组件。这些组件封装了特定的功能,可以在不同的JSP页面中复用,从而提高开发效率...
在Struts2框架中,自定义标签是扩展和优化应用功能的重要手段,它允许开发者创建符合业务逻辑且可重用的视图组件。本实例将深入探讨如何在Struts2中实现自定义标签,以及其背后的原理和步骤。 首先,自定义标签在...
#### 四、自定义标签库 1. **自定义标签库的概念**: - 自定义标签库允许开发者创建可重复使用的HTML标签,并封装复杂的Java代码逻辑。 - 这些标签可以在JSP页面中像普通HTML标签一样使用,提高了代码的复用性...
### phpCMS自定义标签详解 #### 一、概述 在phpCMS系统中,自定义标签是一种非常实用的功能,它允许开发者根据自身需求扩展系统功能,为网站开发提供更多灵活性。通过自定义标签,可以在模板文件中方便地调用复杂...
四、使用自定义标签 完成TLD和处理类后,我们需要将它们部署到应用服务器,然后在JSP页面中引用它们。通过在JSP页面顶部添加`<%@ taglib ... %>`指令,我们可以导入自定义标签库: ```jsp ``` 之后,我们就可以像...
### 原创-制作一个带参数的自定义标签 #### 深入解析与实践指南 在Web开发中,自定义标签库是提升代码复用性和可维护性的重要手段,尤其是在JavaServer Pages (JSP)环境中。本文将基于一篇技术笔记——《自定义...
**JSP TLD(Tag Library Descriptor)自定义标签详解** 在Java Web开发中,JSP TLD文件(Tag Library Descriptor)扮演着至关重要的角色。它是一种XML格式的文档,用于描述自定义标签库的元数据,包括标签的名字、...
京东作为国内知名的电商平台,其商品评价系统独具特色,特别是自定义标签功能,为用户提供了一种直观、简洁的方式来理解和评估商品质量。本教程将深入探讨如何仿照京东的商品评价体系,实现自定义标签功能。 一、...
在JavaServer Pages (JSP) 开发中,为了提高代码的可维护性和重用性,开发者经常使用自定义标签库。本主题将深入探讨“jsp自定义分页标签”,这是一种在网页展示大量数据时非常实用的功能,它可以有效地帮助用户浏览...
### 自定义标签库制作详解 #### 一、引言 自定义标签库是Java Server Pages (JSP) 技术中的一个重要组成部分,它允许开发者创建可重用的、功能丰富的HTML标签,这些标签可以像标准HTML标签一样在JSP页面中使用。...
### 四、自定义标签的属性和体内容 1. **属性**:标签可以有零个或多个属性,每个属性对应一个参数传递给标签处理器类。 2. **体内容**:标签可以包含体内容,通过`body-content`属性在TLD中指定,如`scriptless`、...
四、创建和使用自定义标签库的基本步骤: 1. 创建标签处理类:编写实现特定功能的Java类。 2. 创建TLD文件:定义标签库及其包含的标签。 3. 配置web.xml:声明标签库的TLD文件位置。 4. 引入JSP页面:在JSP中使用...