引自 http://fengzhijie1103.iteye.com/blog/386831
自定义标签的最大的特点:
利用 自定义标签,软件开发人员和页面设计人员可以独立地自由工作.页面设计人员可以把精力集中在使用标签(HTML,XML或者JSP)创建网站上,而软件开发人员则可以将精力集中在实现底层功能上面,若国际化等等,这样,页面设计人员可以使用自定义标签的形式来实现具体的功能.
下面我们来指定一个简单的标签,步骤如下
扩张TagSupport
写自定义Tag的tld文件
web.xml中指定你的tld文件
在JSP页面使用自定义标签
扩张TagSupport
说明:
一般不会去实现Tag接口,而是通过TagSupport类是实现了Tag的接口继承过来的字段,这些字段用做public int doStartTag(),public int doEndTag()返回值
Tag.EVAL_BODY_INCLUDE 包含主体内容
Tag.SKIP_BODY 不包含主体内容
Tag.EVAL_PAGE 包含后面的页面内容
Tag.SKIP_PAGE 不包含主体的内容
实现一个简单实现代码:
package com.mercyblitz;
import java.io.IOException;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.TagSupport;
public class MyTags extends TagSupport {
public int doStartTag()throws JspException
{
JspWriter out=pageContext.getOut();
try
{
out.println("Hello,World"); //页面中显示的内容
}catch(IOException e)
{
throw new JspException(e);
}
return SKIP_BODY; //不包含主体内容
}
}
写自定义Tag的tld文件 xml代码
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" "web-jsptaglibrary_1_2.dtd" >
<taglib>
<tlibversion>tlibversion</tlibversion>
<jsp-version>1.2</jsp-version> <!-- 指定你的JSP版本,扩张标签是在JSP1.2之后兼容的 --?>
<shortname>shortname</shortname>
<tag>
<name>tags</name>
<tagclass>com.mercyblitz.mytags</tagclass>
</tag>
</taglib>
web.xml中指定你的tld文件 xml代码
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
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-app_2_4.xsd">
<welcome-file-list>
<welcome-file>/WEB-INF/mytag.jsp</welcome-file>
</welcome-file-list>
<jsp-config>
<taglib>
<taglib-uri>http://mercyblitz.blog.ccidnet.com/taglibs.tld</taglib-uri> <!-- 设置自定义标签的uri(不一定存在,但是一定要唯一),为页面的部署做好准备
<taglib-location>/WEB-INF/taglibs.tld</taglib-location>
</taglib>
</jsp-config>
</web-app>
页面部署:mytag.jsp
<PRE class=html name="code"><%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@ taglib uri="http://mercyblitz.blog.ccidnet.com/taglibs.tld" prefix="out" %>
<html>
<head>
<title>mytag.jsp</title>
</head>
<body>
<out:tags/>
</body>
</html>
</PRE>
<BR>
分享到:
相关推荐
学习自定义标签的过程中,会涉及到如何创建处理程序类、编写TLD文件、在JSP页面中使用自定义标签等多个步骤。通过实际项目练习,可以更好地掌握这些技能。 9. **与其他技术的结合** 自定义标签可以与Servlet、...
本篇学习笔记将深入探讨JSP自定义标签的相关概念、创建方法以及实际应用。 一、概述 1.1 使用简单标签机制 JSP自定义标签提供了类似HTML标签的语法结构,通过自定义标签,开发者可以封装复杂的Java代码,使得页面...
### 自定义标签学习笔记 #### 一、什么是自定义标签? 自定义标签是JSP(Java Server Pages)中的一种功能,允许开发者创建可重用的组件。这些组件封装了特定的功能,可以在不同的JSP页面中复用,从而提高开发效率...
- Spring Web Flow、JSF等框架也提供了自定义标签的机制,进一步丰富了Web2.0开发中的自定义标签应用。 通过自定义标签,Web2.0应用可以更加灵活地构建用户界面,提供定制化的交互体验。同时,这也有助于提升...
在提供的示例中,重要代码已经做出注释,这对于理解和学习自定义标签至关重要。注释可以帮助初学者理解每个部分的作用,比如处理类中的各个方法、TLD文件中的元素含义等。 6. **项目结构** 压缩包`tagProject`很...
在Java Server Pages (JSP) 2.0版本中,自定义标签和自定义标签函数极大地扩展了JSP开发的灵活性和可重用性。这些特性允许开发者创建可复用的组件,使代码更加清晰,易于维护。本文将深入探讨JSP 2.0中的自定义标签...
在"spring自定义标签例子"这个项目中,我们可以深入理解这一特性,特别是通过Chapter2工程的实例来学习。 Spring框架的自定义标签通常用于简化XML配置,提升可读性和可维护性。这些标签是基于Java的`org.spring...
学习和使用Java自定义标签,可以帮助开发人员更好地组织JSP页面,提高代码的模块化和重用性。同时,通过阅读提供的压缩包文件,如"初试jsp自定义标签库 - Java编程.htm",可以深入理解自定义标签的创建过程和使用...
java jsp自定义标签非常好用大家下载学习java jsp自定义标签非常好用大家下载学习java jsp自定义标签非常好用大家下载学习java jsp自定义标签非常好用大家下载学习java jsp自定义标签非常好用大家下载学习java jsp...
通过分析这个示例,我们可以学习如何在实际项目中应用自定义标签,以提高模板的可维护性和复用性。 总的来说,理解并掌握Freemarker的自定义标签,不仅可以使模板设计更加灵活,还能帮助我们更好地组织和管理视图层...
自定义标签是JSP(JavaServer Pages)技术中非常重要的一个概念,它允许开发者通过简化的方式来编写可复用的代码段,从而增强JSP页面的可读性和可维护性。本篇文章将深入讲解自定义标签的使用、实现原理以及开发过程...
**正文** ...在JSP中,自定义标签(Custom Tags)是扩展JSP功能的一个强大工具,它允许我们创建自己的...文件"TestDIYtaglib"可能是某个自定义标签库的实现,通过分析其内容,我们可以进一步了解和学习自定义标签的实践。
通过学习自定义标签,你可以构建更加模块化的Web应用程序,减少代码重复,提升开发效率。在这个压缩包文件“自定义标签学习”中,你可以找到更多关于创建和使用自定义标签的实例和详细解释,帮助你深入理解这一关键...
Struts2作为一款流行的Java Web框架,极大地简化了MVC(模型-视图-控制器)应用的开发。...通过对这些文件的分析和学习,你可以深入理解Struts2自定义标签的工作原理,并掌握其在实际项目中的应用。
本文将详细介绍JSP自定义标签的学习路径,从基础概念到实践应用。 **什么是自定义标签** 自定义标签是JSP的一种扩展机制,它允许开发者定义自己的标签,这些标签可以像HTML标签一样在JSP页面中使用。自定义标签遵循...
在深入学习自定义标签的过程中,了解Spring Security的源码也是有益的。通过阅读Spring Security的源码,我们可以理解其内部的工作原理,从而更好地定制和扩展功能。例如,研究`AuthorizationManager`和`...
在Spring MVC框架中,Freemarker是一个常用的模板引擎,它允许开发者使用简洁的模板语言来动态生成HTML或者其他...在学习和实践中,你应该尝试创建自己的自定义标签,理解它们的工作原理,以便在实际项目中灵活运用。
在JAVAEE开发中,自定义标签(Custom Tags)是一种强大的工具,它允许开发者创建可重用的组件,提高代码的可读性和可维护性。自定义标签是JSP(JavaServer Pages)的一部分,通过扩展JSP标准标签库(JSTL),我们...
总结来说,通过学习和实践JSP自定义标签,我们可以构建高效、灵活的Web应用程序,比如这里的分页系统,它不仅简化了页面的开发,还增强了系统的扩展性和可维护性。在实际项目中,结合良好的设计原则和最佳实践,...
通过学习和实践自定义标签,开发者能够更好地掌控JSP的高级特性,并提升Web应用的质量和性能。在实际项目中,自定义标签经常用于实现如数据遍历、条件判断、表单验证等常见功能,让JSP页面更专注于展示逻辑,而将...