JSP标签库解析 android软件开发教程

  次阅读 作者:智能小宝 来源:互联网 2016-03-01 10:41 我要评论(0)

标签被定义和分布在一个称为标签库的结构中,一个标签库是由元信息和类组成的集合:

1.标签处理器:实现定制标签功能的Java类。

2.标签附加信息(TEI):向JSP容器提供边辑以确认标签属性和创建变量的类。

3.标签库描述器(TLD):描述单个标签和整个标签库属性的XML文档。

标签处理器和标签附加信息需要定位在JSP容器类载入器可以找到的地方。标签库描述器可在URL指定的符意位置。JSP1.1规范要求JSP容器接受一个打包成因定结构的JAR文件的标签库。TLD必须是/META-INF目录中名为taglib.tld的文件,JAR文件则复制到/WEB-INF/lib目录下。

一、标签实现

1.开发步骤

a.定义标签的名字、属性、声明的变量和标签体的内容。

b.编写标签库描述器TLD。

c.编写标签处理器。

d.在JSP页面中使用标签。

2.JSP页面在JSP容器中的转换步骤:

JSP页面存在三种形式:jsp文件、java文件和class文件。

a.指令元素、和向JSP容器提供转换时信息。

b.HTML行在_jspService()方法中依顺序转换到out.print()语名中。

c.脚本元素的声明被原封不动地复制到_jspService()方法外的源码中。

d.脚本元素的表达式在_jspService()方法中依顺序转换到out.print()语名中。

e.脚本元素的Scriptlet被原封不动地复制到_jspService()方法中。

f.行为元素被转换为执行其功能的运行时逻辑代码

g.定制标签被扩展到调用其相应标签处理器中方法的Java语句中。

3.标签在JSP容器中的转换步骤:

a.JSP容器使用taglib指令元素定位标签库描述器,将页面中用到的定制标签和TLD相匹配。

b.读取标签库描述器的标签列表和每一标签相关的类名字。

c.在页面中遇到一个标签时,查找与具有指定名字的标签前缀相关的一个标签库。

d.容器使用在TLD中找到的标签结构信息生成一系列完成标签功能的Java语句。

二、标签库描述器(TLD)

标签库描述器是一个描述整个标签库标记信息和库中每个标签处理器及其属性的XML文档。

标签库描述器的DTD由一个简单的元素组成,此元素包含下列一些子元素。

整个标签库标记信息

tlibversion 标签库版本号。是一个点式十进制数,最多为4组小数点分隔的数字组成。

jspversion 标签库所需的JSP规范最低版本。例如JSP1.1

shortname 标签库的缩写名。JSP可以使用该名字作为库中标签的缺省前缀。

uri 标签库唯一URI的元素。典型URL位置来自可下载taglib的位置。

info 标签库描述信息。

每个标签处理器及其属性

tag 在TLD中加入标签,描述组成库的每个标签。

name 与标签库的名字前缀一起使用的标签的名字, 是JSP容器唯一的标签标识。

tagclass 实现标签的标签处理器类的全名。

teiclass 标签附加信息(TEI)类的全名。TEI类给出关于标签处理器创建变量及对标签司性执行的任意有效性验证的信息。

bodycontent 描述标签处理器如何使用标签体的内容。有三种取值:

empty:表示标签体必须为空;

JSP:表示脚本元素和模板及其它标签一样被评估。

tagdependent:体内容被原封不动写入BodyContent,其它脚本元素以源码形式出现,而不被JSP容器解释。

info 标签的人工可读描述性信息。

attribute 使用标签时被编码的属性信息。用于定义标签的属性。

本站文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 未来两年人工智能要怎么走?看这篇就够了

    未来两年人工智能要怎么走?看这篇就够了

  • 英国研发“杀生”机器人 通过生命体获取能量

    英国研发“杀生”机器人 通过生命体获取能量

  • 韩春雨称已能重复实验结果 近期将有消息公布

    韩春雨称已能重复实验结果 近期将有消息公布

  • 无人驾驶汽车如何改变城市生活?听听他们怎么说

    无人驾驶汽车如何改变城市生活?听听他们怎么说

网友点评网友点评
阅读推荐阅读推荐

据国外媒体报道,在过去两年内,聊天机器人(chatbot)、人工智能以及机器学习的研发和采用取得了巨大进展。许多初创公司正利用人工智能和...

霍金 视觉中国 图 英国著名物理学家霍金(Stephen Hawking)再次就人工智能(AI)发声,他认为:对于人类来说,强大AI的出现可能是最美妙的...

文|郑娟娟 今年,人工智能(AI) 60岁了。在AI60岁的时候,笔者想要介绍一下AI100,一个刚刚2岁的研究项目,但它的预设寿命是100年,甚至更长...

AlphaGo与李世石的人机大战,为大众迅速普及了人工智能的概念。 但对谷歌而言,除了下围棋,现在的人工智能进展到哪一步了?未来,人工智能...