JSP: Tag文件与Tag标记

文章介绍了JSP中的Tag文件结构,包括Tag文件的组成、保存方法及编码设置。Tag标记的使用涉及到Tag文件的调用、taglib指令的引入以及运行原理。同时,讲解了Tag文件中的常见指令,如.tag、include、attribute、variable和taglib,强调了它们在定义和使用自定义标签中的作用。
摘要由CSDN通过智能技术生成

目录

3.1 Tag文件的结构

3.1.1 Tag文件的结构

3.1.2 Tag文件的保存

3.2 Tag标记

3.2.1 Tag标记和Tag文件

3.2.2Tag标记的使用

3.2.3 Tag标记的运行原理

3.3Tag文件中的常用指令

3.3.1. tag指令

3.3.2. include指令

3.3.3. attribute指令 

3.3.4. variable指令 

3.3.5. Taglib 指令 


3.1 Tag文件的结构


3.1.1 Tag文件的结构


Tag文件是扩展名为.tag的文本文件,其结构和JSP文件类似。其中可以有普通的HTML标记符、某些特殊的指令标记、成员变量声明和方法的定义。Java程序片和Java表达式。

3.1.2 Tag文件的保存


1)Tag文件所在目录

在 JSP 中,标签文件通常存储在 WEB-INF/tags 目录下,该目录是受保护的,无法从客户端(即浏览器)访问。标签文件应该放在具有描述性子目录名称的目录下,例如:WEB-INF/tags/forms 或 WEB-INF/tags/utilities。这样会使您的标签更易于组织和查找。

2)Tag文件的编码

在 JSP 标签文件中使用的编码方式与常规的 JSP 页面相同。您可以指定 JSP 标签文件的编码方式,例如 UTF-8,通过在 JSP 标签文件的开始标记 <%@ tag %> 中添加 charset 属性。例如:


<%@ tag language="java" pageEncoding="UTF-8" %> 


3.2 Tag标记


3.2.1 Tag标记和Tag文件


某个Web服务目录下的Tag文件只能由该Web服务目录中的JSP页面调用,JSP页面必须通过Tag标记来调用一个Tag文件。

Tag标记的名字和Tag文件的名字一致,即当我们编写了一个Tag文件并保存到特定目录后,也就给出了一个Tag标记,该标记格式为:

<Tag - - 文件的名字 - - />


<Tag - - 文件的名字 - - >  内容  </Tag 文件的名字>


    一个Tag文件对应着一个Tag标记,把全体Tag标记称之为一个自定义标记库或简称为标记库。

3.2.2Tag标记的使用


  一个JSP页面通过使用Tag标记来调用一个Tag文件。Web服务目录下的一个JSP页面在使用Tag标记来调用一个Tag文件之前,必须首先使用taglib指令标记引入该Web服务目录下的标记库,只有这样JSP页面才可以使用Tag标记调用相应的Tag文件。

    taglib指令的格式如下:
 

<%@ taglib tagdir = "标记库的位置" prefix = “前缀”%>

    例如:
 

<%@ taglib tagdir = "/WEB-INF/tags" prefix = “computer” %>


    引入标记库后,JSP页面就可以使用带前缀的Tag标记调用相应的Tag文件,其中的前缀由<taglib>指令中的prefix属性指定。例如JSP使用如下Tag标记调用相应的Tag文件:
 

<computer:oddNumberSum/>


注:JSP页面使用Tag标记时,冒号:的左右不要有空格。

例:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib tagdir ="/WEB-INF/tags/lib1" prefix="computer"%>
<html>
<body>
<h1>调用Tag文件计算100內的奇数和:</h1>
<computer:addSum /> <%-- 使用Tag标记 --%>
</body>
</html>

3.2.3 Tag标记的运行原理


在 JSP 中,标签(Tag)是一个类似于 HTML 标签的元素,可以用于编写可重用的 Java 代码。标签在 JSP 引擎中运行时,会被解析成 Java 代码,并与页面的其他部分一起编译成一个 Servlet。在客户端访问 JSP 页面时,Servlet 会根据请求生成响应并发送给客户端。 自定义标签的运行原理如下: 1. 标签解析 当 JSP 引擎遇到自定义标签时,会首先解析标签的定义,并根据标签定义生成相应的 Java 代码。标签定义可以包括标签的属性、行为和逻辑,以及标签的处理类和配置文件等。 2. 标签处理 一旦标签被解析,标签处理类就会被实例化,并在页面的运行时环境中执行。标签的属性值会被传递给标签处理类,并在标签处理类中进行相应的处理。此过程中产生的任何输出都会传递给 JSP 引擎,最终被合并到页面的其他部分中。 3. 页面生成 在 JSP 引擎结束处理标签后,它将合并标签处理类产生的任何输出,并将其与页面的其他部分一起编译成一个 Servlet。在客户端访问 JSP 页面时,Servlet 会根据请求生成响应并发送给客户端。 简而言之,JSP 标签的运行原理基于标签的解析、标签处理和页面生成。标签的解析和处理是在服务器端完成的,可以让开发人员编写更加简洁、可重用的代码。这样可以提高开发效率和代码的可读性,同时也可以减少代码的重复编写。

3.3Tag文件中的常用指令


3.3.1. tag指令

<%@ tag %> 
此 JSP 指令用于声明自定义标记的页面特定属性。它位于 JSP 页面的顶部,在任何 HTML 或 Java 代码之前,用于定义标记的属性和特征。这些属性可以包括标记名称、标记正文内容、属性名称和类型等内容。

3.3.2. include指令

<%@ include %> 
 此 JSP 指令用于包含 JSP 页中的其他文件或页面。包含文件的内容直接插入到 JSP 输出中,包含的文件可以是静态 HTML 文件,也可以是动态 JSP 文件。

3.3.3. attribute指令 

<%@ attribute %> 
此 JSP 指令用于定义可传递给定制标记的属性。它与 tag 指令结合使用以定义标记的属性,并指定属性的名称、类型和默认值。

3.3.4. variable指令 

<%@ variable %> 
 此 JSP 指令用于定义可在多个 JSP 片段之间共享的页面级变量。它用于声明可由 JSP 页的不同部分(包括导入的文件和包含的页)访问和修改的变量。

3.3.5. Taglib 指令 

<%@ taglib %> 
 此 JSP 指令用于定义和导入标记库。它用于将一组自定义标记与特定 URI 相关联,并指定标记库描述符文件 (TLD) 的位置。导入后,可以通过引用自定义标记的标记名称和属性名称在 JSP 页面中使用自定义标记。
 

总结
Tag文件和Tag标记都是JSP的自定义标签,用于将Java代码和HTML页面结合起来。 它们可以通过特殊的JSP指令进行定义和使用。 Tag文件是一种可重用的代码块,类似于Java类文件,通常存储在以“tag”为后缀名的文件中。 Tag文件可以包含JSP页面所需的Java代码和HTML页面元素,它们可以在JSP页面中使用,以便重复使用和简化代码。 Tag标记是在JSP页面中使用的自定义标签,用于替代Java代码和HTML标记。 它们可以用于执行任何JSP页面中需要的操作,如从数据库中检索数据、应用逻辑操作等。 Tag标记是通过定义和实现自定义标记处理器来创建的。 在使用Tag文件和Tag标记时,可以使用JSP标记库来将它们导入JSP页面。 这样,JSP页面就可以使用这些自定义标记,并且可以指定它们的属性和行为。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值