一个tag就是一个普通的java类,它唯一特别之处是它必须继承TagSupport或者BodyTagSupport类。这两个类提供了一些方法,负责jsp页面和你编写的类之间的交互,例如输入,输出。而这两个类是由jsp容器提供的,无须开发人员自己实现。换句话说,你只需把实现了业务逻辑的类继承TagSupport或者BodyTagSupport,再做一些特别的工作,你的类就是一个Tag。并且它自己负责和jsp页面的交互,不用你多操心。
“特别的工作”通常有以下几个步骤:
1)提供属性的set方法,此后这个属性就可以在jsp页面设置。以jstl标签为例 <c:out value=""/>,这个value就是jsp数据到tag之间的入口。所以tag里面必须有一个setValue方法,具体的属性可以不叫value。例如
setValue(String data){this.data = data;}
这个“value”的名称是在tld里定义的。取什么名字都可以,只需tag里提供相应的set方法即可。
2)处理 doStartTag 或 doEndTag 。这两个方法是 TagSupport提供的。 还是以<c:out value=""/>为例,当jsp解析这个标签的时候,在“<”处触发 doStartTag 事件,在“>”时触发 doEndTag 事件。通常在 doStartTag 里进行逻辑操作,在 doEndTag 里控制输出。
3)编写tld文件。
4)在jsp页面导入tld
这样,你的jsp页面就可以使用自己的tag了。
通常你会发现自己绝大多数活动都集中在 doStartTag 或 doEndTag 方法里。确实如此,熟悉一些接口和类之后,写taglib很容易。正如《jsp设计》的作者所言:里面的逻辑稍微有点复杂,但毕竟没有火箭上天那么难。 value = RequestUtils.lookup(pageContext, bean, name, null);
附件是我写的一个例子,呵呵,参考一下啦
分享到:
相关推荐
《apriltag标签技术详解——聚焦tag36h11》 在计算机视觉领域,apriltag是一种广泛应用的二维图像识别技术,它以其鲁棒性和高效性被广泛应用于机器人导航、无人机定位、自动化物流等领域。其中,tag36h11是apriltag...
总结起来,"TagGroup自定义标签布局"是一个实用的Android组件,它提供了丰富的自定义选项和布局策略,方便开发者构建个性化的标签显示效果。通过深入学习和实践,开发者不仅可以掌握自定义组件的技巧,还能提升对...
### Java的Tag标签教程知识点详解 #### 一、引言 在Java Web开发中,特别是JSP技术领域,自定义标签(Tag)是一种非常实用的功能,它允许开发者创建可复用的代码片段,从而提高开发效率并增强代码的可维护性。本文将...
总结,JSP的tag标签提供了强大的功能,使得开发者能够更好地组织和复用代码。无论是使用JSTL标准标签还是创建自定义标签,都能极大地提升开发效率和代码质量。理解并熟练掌握tag标签的使用,是成为一名高效JSP开发者...
总结起来,`tag标签实现DAO`是一种有效的简化Java Web应用中数据库操作的方法,它提高了代码的可读性和可维护性,同时也提升了开发效率。通过理解和实践这种方式,你可以为自己的项目带来更加高效和优雅的解决方案。
总结来说,利用Layui实现input框添加tag功能,主要涉及到HTML结构的设计、CSS样式的定制以及JavaScript事件处理。通过这些技术的结合,我们可以轻松地为前端应用添加具有交互性和美观性的tag输入功能。
总结,NFCModelB作为NFC技术的一种实现,具备高效、便捷的通信特性,广泛应用于各种场景,包括支付、交通、门禁和身份验证等。了解和掌握NFCModelB的相关知识,对于开发相关应用或者日常使用都具有重要意义。
"NFCTAG标签--NFCModelC"可能指的是某个特定的NFC标签型号或者在Android系统中的NFC模型C。在Android系统中,NFC功能可以通过Android NFC API来访问和控制。开发者可以利用这些API来实现读取、写入NFC标签,以及进行...
"statusTags"是一个基于JavaScript的tag标签插件,它旨在帮助开发者轻松地在他们的项目中实现自定义的标签功能。这个插件的核心特性是能够根据用户提供的模板和数据来动态生成标签,提供了一整套完善的管理功能,...
JSTL(JavaServer Pages Standard Tag Library)即JavaServer页面的标准标签库,它是一套用于JSP页面的自定义标签库,通过这些标签可以简化JSP页面的开发。本文将对JSTL中常用的标签进行总结。 首先,标签主要用于...
总结,Struts2的自定义标签实例涉及到以下几个关键步骤:创建标签实现类、定义标签描述符、在JSP中使用标签以及处理标签逻辑。通过这种方式,我们可以构建强大的视图层组件,使代码更易于理解和维护,同时提升应用的...
VLAN标签由标签协议标识(TPID)和标签控制信息(TCI)两部分组成。其中,TPID为2字节,固定值为0x8100,用于标识帧的类型,表明这是一个802.1Q标签帧;TCI为2字节,包括用户优先级(UserPriority)、规范格式指示器...
总结来说,"标记库,tag实例,java技术"这一主题涵盖了Java Web开发中的一个重要方面,即如何通过标记库来提高代码的可读性和可维护性。通过创建和使用自定义标签,开发者可以将复杂的业务逻辑封装起来,使得JSP页面...
这个使用总结文档将深入探讨Display Tag的功能、配置、使用方法以及常见问题的解决策略。 1. **Display Tag概述** Display Tag是一个基于Servlet 2.3规范的JSP标签库,它极大地简化了网页表格的渲染,提供了分页、...
总结来说,实现jQuery自定义添加标签涉及以下步骤: 1. 创建HTML结构,包括标签列表、输入框和操作按钮。 2. 使用jQuery监听按钮事件,动态创建新的标签元素。 3. 实现“换一换”功能,随机展示不同的标签。 4. 添加...