困惑:自定义jstl标签

问题描述

这几天在学习JSTL自定义标签,看到迭代标签部分的时候有些东西没理解,帖出来,希望大家帮忙研究研究。/**当前标签运行时最先执行的部分,执行完该方法之后才会去执行doStartTag*/publicvoidsetCollection(Collectioncollection){iterator=collection.iterator();}@OverridepublicintdoStartTag()throwsJspException{try{if(iterator!=null){returniterNext(iterator);}}catch(Exceptione){e.printStackTrace();}returnSKIP_BODY;}@OverridepublicintdoAfterBody()throwsJspException{returniterNext(iterator);}@OverridepublicintdoEndTag()throwsJspException{try{if(bodyContent!=null){bodyContent.writeOut(bodyContent.getEnclosingWriter());}}catch(Exceptione){e.printStackTrace();}returnEVAL_PAGE;}privateintiterNext(Iteratoriterators){if(iterators.hasNext()){pageContext.setAttribute(name,iterators.next(),pageContext.PAGE_SCOPE);returnEVAL_BODY_AGAIN;}returnSKIP_BODY;}上例中的name、type、iterator都是私有成员变量,而且name和type都有各自的getter和setter方法。我想问的是在iterNext方法中的pageContext.setAttribute()方法将iterators里的数据压了进去,可是在doEndTag方法中的bodyContent.writeOut(bodyContent.getEnclosingWriter());这句话是怎样将从pageContext中取出的数据来写入到页面呢?另外,书上介绍在写迭代标签的时候不仅要写上面这个标签处理类,还要写一个tei的类,我现在关于这个tei类的作用很是困惑。望有这方面经验的朋友帮帮忙。

解决方案

解决方案二:
该回复于2011-04-07 17:31:31被版主删除
解决方案三:
没明白你要问什么东西
解决方案四:
ls的猫表情
解决方案五:
该回复于2011-04-19 15:05:32被版主删除

时间: 2024-09-24 22:06:46

困惑:自定义jstl标签的相关文章

JSTL标签库(1) 核心标签库

JSTL标签库 JSTL标签库的使用是为类弥补html表的不足,规范自定义标签的使用而诞生的.在告别模式开发应用程序后,人们开始注重软件的分层设计,不希望在jsp页面中出现java逻辑代码,同时也由于自定义标签的开发难度较大和不利于技术标准化产生了自定义标签库. JSTL标签库可分为5类: (1).核心标签库 (2).I18N格式化标签库 (3).SQL标签库 (4).XML标签库 (5).函数标签库 1.核心标签库 JSTL的核心标签库标签共13个,从功能上可以分为4类:表达式控制标签.流程控

JSP JSTL标签

JSP 标准标签库(JSTL) JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能. JSTL支持通用的.结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签. 除了这些,它还提供了一个框架来使用集成JSTL的自定义标签. 核心标签 核心标签是最常用的JSTL标签.引用核心标签库的语法如下: <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core&quo

jstl标签库引入报错

问题描述 我要使使用Jstl标签库中的标签,jstl.jar和standard.jar这两个包都引入了,但是在Jsp中写<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>的时候报错,说找不到uri,还需要在哪里配置么? 问题补充:我的是1.0的 换成<%@ taglib uri="http://java.sun.com/jstl/core" prefix=

Taglib原理和实现:再论El和JSTL标签

js 问题:你想和JSTL共同工作.比如,在用自己的标签处理一些逻辑之后,让JSTL处理余下的工作. 看这个JSP例子: <% String name="diego"; request.setAttribute("name",name);%><c:out value="${name}"/>...... 许多JSTL标签支持El表达式,所以,只要你在自己的标签内部把值塞进request,其他jstl标签就能使用它们 下面这个

使用JSTL标签来访问list并判断list中的选中项

js|访问|来访|选中 本文将向大家讲述如何通过sun公司的jstl标签来访问list对象,并在jsp页面进行显示 一般而言,list对象会存储在request对象,session对象中,一般采用框架(比如说Struts框架中的Action)完成把list对象置入request对象中, XXAction{ public ActionForward execute(  ActionMapping mapping,  ActionForm form,  HttpServletRequest requ

如何使用JSTL标签做页面资源国际化

js|页面 1 Web应用开发,如何使用JSTL 标签做页面资源国际化需解决问题描述:1 项目中的文本要实现国际化 2 希望达到按模块分开编写国际化资源文件解决方案: JSTL 标签支持国际化的标签为 <fmt:bundle> <fmt:message> <fmt:setBundle><fmt:param> <fmt:bundle> 功能:指定消息资源使用的文件 <fmt:message>功能:显示消息资源文件中指定key的消息,支持

自定义的标签与html的标签混合应用

 源码是某书提供的,先看一个例子:<html xmlns:comic="http://www.w3.org/1999/xhtml"><!--声明自定义标签的前缀--><!--自定义的标签与html的标签混合应用--><comic:comicbook><tr><comic:book1>  <td><!--设定自定义标签的样式-->  <comic:bookname date="

扩展 Dreamweaver:自定义第三方标签的解析

dreamweaver 因为最近一直在做 Dreamweaver 插件的开发,中文的资料非常少,自己英文又差,查看英文资料的时候不由头昏脑胀.迫不得已把其中一些重要的内容翻译成中文之后,看的时候才觉得爽快不少.本节选自 Dreamweaver 8 附带的<Extending Dreamweaver 8>,翻译的时候参考了一下侠客岛翻译的<Dreamweaver 4 中文帮助>.不过老实不客气地说,我有点怀疑那个帮助的某些部分是用金山快译之类的软件翻译的,反正读起来比英文还难懂. 服

JSTL标签库(2) I18N格式化标签库

I18N格式化标签库 JSTL标签提供了对国际化(I18N)的支持,它可以根据发出请求的客户端地域的不同来显示不同的语言.同时还提供了格式化数据和日期的方法. 实现这些功能需要I18N格式标签库(I18N-capable formation tags liberary).引入该标签库的方法为: <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> I18N格式标签库提供了11个