定制标签内幕
来源:互联网 发布:自行车销量排行榜 知乎 编辑:程序博客网 时间:2024/05/16 11:14
一个简单的定制标签包括了以下几个要素:
1、JavaBean:为了充分利用Java的面向对象特性,重用代码应当放置在独立的代码容器内
。这些JavaBean可不是标签库的一部分。他们是标签库用来执行所分配任务的基础代码模块。
2、标签处理器:这是标签库的真正核心。标签处理器(tag handler)引用它所需要的任何外部材料(JavaBean)并且负责访问JSP页面的信息(PageContext对象)。而JSP页面则把页面上设置的标签属性都传递给标签处理器,JSP页面上的标签标示的内容也是这样处理的。当标签处理器完成其处理过程,它就会把处理后的输出结果回送给JSP页面做进一步处理。
3、标签库描述符(TLD文件):这是一种很简单的XML文件,TLD文件描述和说明了属性、信息和标签处理器文件位置等信息。JSP 容器使用这一文件来映射被调用标签库的位置和用法。
4、Web站点的web.xml文件:其实这就是你的Web站点上的初始化文件。在这个文件内你可以定义Web应用程序中使用的定制标签,还可以定义用来描述每个定制标签的TLD文件。
5、发布文件(WAR或JAR文件):如果你打算重用定制标签,那么你肯定需要想个简便的办法把标签从一个项目迁移到其他项目中去。把标签库打包成一个JAR文件就是这种既方便又高效的标签库发布方式。我们在以上的事例中没有建立JAR文件,但是如果你打算更进一步地了解JAR文件的细节,你不妨阅读“JSP WAR文件简介”。
6、JSP页面上的标签库声明:仅需使用标签库标示符即可方便地声明页面上存在的标签。标签库在页面上声明之后,你就可以随意使用它们了。
看起来会让你忙乎一阵子,实际上没那么糟糕。刚开始用的时候当然会有点棘手。其实真正关键的并不是编码而是把以上各个部分正确地组织起来。这种层次性的结构是很重要的,也正是如此才可以说标签库及灵活又易于使用。更重要的事,这些层次可以让整个建立标签库的过程都能通过JSP IDE自动完成。今后的JSP IDE更可以自动完成创建定制标签的大部分工作,而你自己则只需要负责建立代码和标签处理器。
1、JavaBean:为了充分利用Java的面向对象特性,重用代码应当放置在独立的代码容器内
。这些JavaBean可不是标签库的一部分。他们是标签库用来执行所分配任务的基础代码模块。
2、标签处理器:这是标签库的真正核心。标签处理器(tag handler)引用它所需要的任何外部材料(JavaBean)并且负责访问JSP页面的信息(PageContext对象)。而JSP页面则把页面上设置的标签属性都传递给标签处理器,JSP页面上的标签标示的内容也是这样处理的。当标签处理器完成其处理过程,它就会把处理后的输出结果回送给JSP页面做进一步处理。
3、标签库描述符(TLD文件):这是一种很简单的XML文件,TLD文件描述和说明了属性、信息和标签处理器文件位置等信息。JSP 容器使用这一文件来映射被调用标签库的位置和用法。
4、Web站点的web.xml文件:其实这就是你的Web站点上的初始化文件。在这个文件内你可以定义Web应用程序中使用的定制标签,还可以定义用来描述每个定制标签的TLD文件。
5、发布文件(WAR或JAR文件):如果你打算重用定制标签,那么你肯定需要想个简便的办法把标签从一个项目迁移到其他项目中去。把标签库打包成一个JAR文件就是这种既方便又高效的标签库发布方式。我们在以上的事例中没有建立JAR文件,但是如果你打算更进一步地了解JAR文件的细节,你不妨阅读“JSP WAR文件简介”。
6、JSP页面上的标签库声明:仅需使用标签库标示符即可方便地声明页面上存在的标签。标签库在页面上声明之后,你就可以随意使用它们了。
看起来会让你忙乎一阵子,实际上没那么糟糕。刚开始用的时候当然会有点棘手。其实真正关键的并不是编码而是把以上各个部分正确地组织起来。这种层次性的结构是很重要的,也正是如此才可以说标签库及灵活又易于使用。更重要的事,这些层次可以让整个建立标签库的过程都能通过JSP IDE自动完成。今后的JSP IDE更可以自动完成创建定制标签的大部分工作,而你自己则只需要负责建立代码和标签处理器。
0 0
- 定制标签内幕
- 定制xdoclet 标签
- 使用定制标签-1
- 使用定制标签-2
- 使用定制标签-3
- jsp 定制标签
- JSP定制标签库
- JSP 定制标签
- jsp定制分页标签
- 编写定制标签
- JSP编写定制标签
- 定制自己的xDoclet标签
- 定制自己的xDoclet标签
- 定制自己的xDoclet标签
- 开发定制标签库-1
- 开发定制标签库-2
- 开发定制标签库-3
- 开发定制标签库-4
- 从零开始学习OpenGL ES之三 – 透视
- 自定义的select
- scripy爬取页面并按目录结构存放页面
- recv send 阻塞和非阻塞
- SDWebImage [UIButton setImageWithURL:(NSURL *) forState:(UIControlState)] 的bug
- 定制标签内幕
- 关于socket阻塞与非阻塞情况下的recv、send、read
- 甜椒刷机助手(安卓一键刷机助手) v3.5.1.1 电脑版
- 燃尽图之辩
- 对于android的播放引擎stagefright中关键成分OMX理解
- SDIO接口 wifi 无线模块 RTL8189ES芯片 高性能 低功耗 体积小
- 关于谷歌浏览器不能播放背景音乐的问题(与IE的不同之处)
- TLV(tag length value)编码
- 如何进入到嵌入式系统开发行业