`
- 浏览:
241553 次
- 性别:
- 来自:
上海
-
在JSP中有一种机制,可以让你在JSP页面中插入与HTML类似的标记。本文介绍JSP定制标记的基本概念和构成,以及如何开发和应用JSP定制标记。
关键字
JSP,XML,TLD,标记符
什么是标记
使用HTML语言我们可以这样去编辑我们的网页:
<HTML>
<HEAD>
<TITLE>
HELLO WORLD
</TITLE>
</HEAD>
<BODY>
HELLO WORLD
</BODY>
</HTML>
在这里我们把</HEAD>,<TITLE>,<BODY>称为标记。HTML 标记( HTML Markup)是HTML文档的控制语言,用于指定浏览器显示和打印文档的方式.它是用小于号"<"和大于号">"括起来的短语和符号,如 <Html>、</Body>等。许多HTMl标记以成对的方式出现,如<TITLE>< /TITLE>、<Body></Body> 等。在JSP中我们也可以定制自己的标记,以供JSP页面使用,如下例所示
<!—login.jsp-->
<%@ taglib uri="/tlds/taglib.tld" prefix="tagclass" %>
<html>
<head>
<title>login</title>
</head>
<body>
<tagclass:login width="200" height= "100" >
</tagclass:login>
</body>
</html>
在上例中</tagclass:login>就是一个JSP定制标记符。widtht、height是这个标记的属性。<%@ taglib uri="/tlds/taglib.tld" prefix="tagclass" %>是一个标记库定义指令,在稍后我们将会讨论。在JSP中定制标记符,实质上就是以标记的形式封装了一个俱有独立功能的Java类。标记的使用减少了直接嵌入JSP页面的Java代码,方便了页面的布局,并且有利于代码的复用,提高了开发的效率。
JSP服务器解析标记的过程
那么当一个标记被嵌入JSP页面后,JSP服务器是如何对这个标记进行解析的呢?各对象的含义如下所示:
Client: 表示客户端。
JSP-Server:JSP服务器。
JSP-Page:JSP页面。
TLD: 标记库描述文件,定义标记和标记的各种属性和处理文件等。
TagClass 标记处理程序
当一个用户访问一个JSP页面时,这个请求被发送到JSP服务器,JSP服务器会根据这个请求去调用相应的页面,如果这个页面中有自定义的标记, JSP服务就会根据页面指令<%@ taglib>去访问TLD得到处理程序的相关信息,接着调用该处理程序的构造器方法,启动标记符处理程序,并读取标记符的属性和相应值。对每个没有设置属性的,调用相应的set方法。当标记符第一次使用时,它的任何属性都不会做过设置,因此对每个属性都调用set方法。属性设置完以后,JSP服务器调用处理程序的doStartTag(),然后再调用doEndTag()方法。最后JSP服务器会继续处理剩下的页面,在页面结尾调用release ()方法,清理占用的所有资源。
TLD文件
TLD(TLD:Tag Library Descriptor标记库描述符)文件,标准的XML格式的标记定义文件,被用来存放标记符的信息,下面就是一个典型的TLD文件。
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!—XML的版本及其字符集-->
<!DOCTYPE taglib
PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
"http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
<!—文档类型定义-->
<taglib>
<!—此标记说明我们开始描述一个标记库-->
<tlibversion>1.0</tlibversion>
<!—标记库的版本-->
<jspversion>1.1</jspversion>
<!—所使用的JSP的版本-->
<shortname>tagclass</shortname>
<!—缺省的名称-->
<tag>
<name>login</name>
<!—标记的名称-->
<tagclass>
tagclass.login.login
<!—处理这个Tag的相应的类的名称-->
</tagclass>
<info>
<!—对本标记符的描述-->
</info>
<attribute>
<!—开始定义标记的属性-->
<name>height</name>
<!—属性的名称-->
<required>true</required>
<!—表示这个属性是不是必须的-->
<rtexprvalue>true</rtexprvalue>
<!—表示这个属性是否可以用JSP的程序段的结果输出-->
</attribute>
<attribute>
<name>width</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
</taglib>
在这个TLD文件中定义了只有一个标记符的标记符库,这个名为login的标记符会调用一个Applet以验证用户的合法性。处理这个标记的类就是 tagclass.login.login。width、height是这个标记的两个属性。属性是在使用标记符时作为参数发送的值。我们可以在上面的示例中增加几个标记,也可以为每个标记添加几个属性。我们开发标记符库时不一定非要从头开始,自己编写一个全新TLD。我们可以使用某个集成的开发的环境,也可以修改上面的例子。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
JSP是Java平台上的动态网页技术,它允许开发者在HTML、XML或其他标记语言中嵌入Java代码,从而实现动态内容的生成。JSP的核心概念包括以下几点: 1. **JSP元素**:JSP页面由静态内容和动态元素组成,动态元素包括...
- 在`one.jsp`、`two.jsp`和`three.jsp`页面中使用`jsp:include`动作标记动态加载导航条文件`head.txt`。 - 例如: `<jsp:include page="head.txt" flush="true" />` **forward动作标记** - **定义**: `forward`...
JavaServer Pages(JSP)是一种基于Java技术的动态网页开发工具,它允许开发者在HTML、XML或者其他标记语言中嵌入Java代码,以实现服务器端的程序逻辑。JSP的出现极大地简化了Web应用程序的开发过程,使得开发者可以...
jsp语法详解中还有其他一些重要的知识点,例如jsp指令、jsp动作、jsp隐式对象等。jsp指令用于在jsp文件中指定指令,例如&page指令、include指令等。jsp动作用于在jsp文件中执行某些操作,例如jsp:useBean动作、jsp:...
**JSP应用开发详解第三版源代码** JSP(JavaServer Pages)是Java平台上的一个核心技术,用于构建动态web应用程序。《JSP应用开发详解第三版》是一本深入讲解JSP技术的专业书籍,其源代码提供了丰富的实例和实践...
### Servlet与JSP深入详解:基于Tomcat的Web开发 #### 一、Servlet技术概述 Servlet是一种用Java编写的服务器端应用程序接口(API),它扩展了Java Web开发的功能。Servlet可以响应HTTP请求,并且能够处理复杂的...
实验旨在使参与者能够熟练掌握如何在JSP页面中嵌入成员变量、Java程序片段及表达式,同时深入了解`<%@ page %>`, `<%@ include %>`等指令标记与`<jsp:include>`、`<jsp:forward>`等动作标记的应用场景与技巧。...
在JSP中,有九个内置对象,它们是JSP引擎在编译JSP页面时自动创建并注入到每个请求处理过程中的。这些内置对象极大地简化了开发者的编程工作,无需显式创建或实例化。以下是JSP的九大内置对象及其详细解释: 1. **`...
**JSP标准标记库(JSP Standard Tag Library, JSTL)详解** JSP标准标记库,简称JSTL,是JavaServer Pages(JSP)技术的重要组成部分,它为Web开发提供了一组预定义的、可重用的标签,使得开发者能够更方便地处理...
JSP是一种在服务器端运行的动态网页技术,由Java语言编写,它允许开发人员在HTML、XML或其他标记语言中嵌入Java代码,从而实现网页的动态生成。JSP的核心特点包括分离表现层(视图)和业务逻辑层,这使得网页设计和...
【JSP CSS技术详解】 JSP(JavaServer Pages)是一种基于Java的技术,用于创建动态网页。它将HTML、XML或其他标记语言与Java代码相结合,允许开发者在服务器端处理数据并生成响应的页面内容。JSP的核心特性包括模板...
jsp 标准动作详解 jsp 标准动作是 JSP 页面中的一种重要组件,用于控制 Servlet 引擎的行为。jsp 标准动作利用 XML 语法格式的标记来实现动态地插入文件、重用 JavaBean 组件、把用户重定向到另外的页面、为 Java ...
《JSPparam动作标记的使用详解》 在JavaServer Pages(JSP)中,`<jsp:param>`动作标记是用于传递参数的一个重要工具。它允许开发者在页面间传递信息,通常与`<jsp:include>`, `<jsp:forward>`, 和 `<jsp:plugin>`...
在本“JSP网上书店实例详解”中,我们将深入探讨如何使用Java Server Pages(JSP)技术构建一个功能完备的在线书店系统。JSP是一种基于Java的动态网页开发技术,它允许开发者在HTML代码中嵌入Java代码,以实现服务器...
**JSP应用开发详解** JavaServer Pages(JSP)是Java平台上的一种动态网页技术,它允许开发者将HTML、XML或其他...《jsp应用开发详解》这本书将为初学者和有经验的开发者提供详尽的指导,帮助他们在实践中提升技能。
- `-info`:关于JSP页面的一些描述信息。 - `-errorPage`:当出现异常时重定向到的页面路径。 - `-isErrorPage`:指示当前页面是否作为错误处理页面,默认为`false`。 - `-contentType`:页面的MIME类型和字符集...
在这个"JSP应用开发详解"的主题中,我们将深入探讨JSP的核心概念、工作原理以及实际应用。 1. JSP核心概念 - JSP页面:JSP页面由HTML或XML标记和嵌入的Java代码组成,服务器负责解析并执行这些Java代码。 - JSP...
**JSP网上书店实例详解** 本实例主要探讨的是如何利用JavaServer Pages(JSP)技术构建一个功能完善的网上书店系统。JSP是Java平台上的动态网页技术,它允许开发人员在HTML或XML文档中嵌入Java代码,实现服务器端的...
通过以上介绍,你已经了解了JSP标记库的基本概念,以及如何创建和使用一个简单的自定义标签。在实际开发中,掌握好标记库的使用能大大提高JSP应用程序的质量和效率。希望这个教程对你有所帮助!