三九宝宝网宝宝教育智力培养

JSP自定义标签开发流程

12月16日 编辑 39baobao.com

[流程型企业如何有效运作]“流程再造”在企业界已得到广泛运用,它推动了公司各方面的进步,但也给公司造成了一定的混乱。这是因为,在再造过程中许多公司成功地对它们的核心流程进行了整合,合并了相互关联...+阅读

jsp(SUN企业级应用的首选)中有一块重要的技术:自定义标签(Custom Tag),最近这几天在学习Struts的时候发现Struts中使用了很多自定义标签,如html、bean等。所以我就做了个简单的试验,学习一下这种技术。

首先介绍一下这种技术吧!

1.优点:

取代了jsp(SUN企业级应用的首选)中的Ja程序,并且可以重复使用,方便不熟悉Ja编程的网页设计人员。

2.开发流程:

(1)编写jsp(SUN企业级应用的首选),在jsp(SUN企业级应用的首选)中使用自定义标签。

(2)在web.xml(标准化越来越近了)中指定jsp(SUN企业级应用的首选)中使用的标签的.tld(标签库描述文件)文件的位置。

(3).tld文件中指定标签使用的类。

3. 自定义标签的分类:

(1)简单标签:如< mytag:helloworld/>

(2)带属性标签:如

(3)带标签体的标签:在自定义标签的起始和结束标签之间的部分为标签体(Body)。Body的内容可以是jsp(SUN企业级应用的首选)中的标准标签,也可以是HTML、脚本语言或其他的自定义标签。

(4)可以被Script使用的标签:定义了id和type属性的标签可以被标签后面的Scriptlet使用。

4.接口及其他

实际上,自定义标签的处理类实现了Tag Handler对象。jsp(SUN企业级应用的首选)技术在jax.servletp(SUN企业级应用的首选)。tagext中提供了多个Tag Handler接口,jsp(SUN企业级应用的首选)1.2中定义了Tag、BodyTag、IterationTag接口,在jsp(SUN企业级应用的首选)2.0中新增了SimpleTag接口。jsp(SUN企业级应用的首选)还提供了上述接口的实现类TagSupport、BodyTagSupport和SimpleTagSupport(SimpleTagSupport只在jsp(SUN企业级应用的首选)2.0中才有)。BodyTagSupport实现了BodyTag、Tag和IterationTag接口。

接口及其方法

Tag接口

方法

SimpleTag

dotage

Tag

doStartTag,doEndTag,release

IterationTag

doStartTag,doAfterTag,release

BodyTag

doStartTag,doEndTag,release,doInitBody,doAfterBody

下表引自Sun的jsp(SUN企业级应用的首选)在线教程。

Tag Handler Methods

Tag Handler Type

Methods

Simple

doStartTag, doEndTag, release

Attributes

doStartTag, doEndTag, set/getAttribute1...N, release

Body, Evaluation and No Interaction

doStartTag, doEndTag, release

Body, Iterative Evaluation

doStartTag, doAfterBody, doEndTag, release

Body, Interaction

doStartTag, doEndTag, release, doInitBody, doAfterBody, release

下表中的EVAL是evaluate的缩写,意思是:评价, 估计, 求……的值,在下列的返回值中的意思是执行。

返回值意义

SKIP_BODY表示不用处理标签体,直接调用doEndTag()方法。

SKIP_PAGE忽略标签后面的jsp(SUN企业级应用的首选)内容。

EVAL_PAGE处理标签后,继续处理jsp(SUN企业级应用的首选)后面的内容。

EVAL_BODY_BUFFERED表示需要处理标签体。

EVAL_BODY_INCLUDE表示需要处理标签体,但绕过setBodyContent()和doInitBody()方法

EVAL_BODY_AGAIN对标签体循环处理

以下为关联文档:

开源技术Struts:自定义taglib的开发定义标签必须实现下面三个接口中的一个:Tag、IterationTag、BodyTag 1.Tag 如果要实现这个接口,可以通过扩展TagSupport这个类,来写自己需要的方法,而不需要把Tag接口中的所有...

什么是珠算珠算定义是什么一、定义: 珠算是以算盘为工具进行数字计算的一种方法。 二、珠算的起源与发展: 以算盘为工具进行数字计算的一种方法。“珠算”一词﹐最早见于汉代徐岳撰的《数术记遗》﹐其中有...

对于儿童智力超常的定义在不断演变智力超常的传统定义是根据个人智力测验(通常是《斯坦福一比内特量表》和《韦克斯勒儿童智力量表(修订版)》)测出的一般性智力得出的。换言之,按照传统的做法,凡是在上述两种智力测...

CIO让企业流程进入信息化管理轨道企业信息化管理的一个主要对象就是企业管理流程。如何让企业管理流程标准化、符合信息化管理的序号这是企业信息化项目管理中的一个核心问题。若能把这个问题处理好了,那么信...

软件项目管理十大流程只要流程界定清晰,项目经理就能保证项目的发展方向与最终目标相契合。广义而言,要掌控各种类型项目的发展,首先要关注十个关键的流程。 一、生命周期与方法论 项目的生命周期与...

美术的定义儿童绘画美术是以物质材料为媒介,塑造可观的静止的,占据一定平面或立体空间的艺术形象的艺术.表现作者思想感情的一种社会意识形态,同时也是一种生产形态。 美术,也称造型艺术或视觉艺术...

报告的定义、特点及写作格式一、报告的定义和类别 报告是机关向上级机关或业务主管部门反映情况、汇报工作、报送文件、报告查询事宜时所写的汇报性文件。 在机关中,报告的使用范围很广。按照上级部署或...

定义珠心算是讨论珠心算的前提珠心算是珠算的重要组成部分,研讨清楚珠心算起源、传承与发展的有关问题,很有必要。就此原意谈谈我们的一些看法。下面我们就来看看作者是怎样写的吧。 定义珠心算是讨论珠心...

教学案例的定义和写作步骤一、教学案例与它在教师培训中的重要作用 什么是案例? ●在本项研究中,所谓案例是指包含有某些决策或疑难问题的教学情境故事,这些故事反映了典型的教学思考力水平及其保持、...

推荐阅读
图文推荐