from http://www.blogjava.net/Reg/archive/2009/11/20/303085.html
struts2的s:iterator 可以遍历 数据栈里面的任何数组,集合等等 以下几个简单的demo:
s:iterator 标签有3个属性:
value:被迭代的集合
id :指定集合里面的元素的id
status 迭代元素的索引
1:jsp页面定义元素写法 数组或list
<s:iterator value="{'1','2','3','4','5'}" id='number'>
<s:property value='number'/>A
</s:iterator>
打印结果为: 1A2A3A4A5A
2:索引的用法
如果指定了status,每次的迭代数据都有IteratorStatus的实例,它有以下几个方法
int getCount()返回当前迭代了几个元素
int getIndex()返回当前元素索引
boolean isEven()当然的索引是否偶数
boolean isFirst()当前是否第一个元素
boolean isLast()
boolean isOdd()当前元素索引是否奇数
<s:iterator value="{'a','b','c'}" id='char' status='st'>
<s:if test="#st.Even">
现在的索引是奇数为:<s:property value='#st.index'/>
</s:if>
当前元素值:<s:property value='char'/>
</s:iterator>
3:遍历map
value可以直接定义为:
value="#{"1":"a","2":"b"}"
每个元素以都好隔开。元素之间的key和value 冒号隔开
value也可以是数据栈里面的java.util.Map对象
遍历写法如下:
<s:iterator value="map" id="id" status="st">
key : <s:property value='key'/>
value:<s:property vlaue='value'/>
</s:iterator>
当然key 和value 都可以使java 的 Object
3:遍历数据栈.简单的List类,
List<Attr>
class Attr{String attrName;String getAttrName(){return "123";}}
<s:iterator value="label" id="id">
<s:property value="#id.attrName" />
</s:iterator>
当然value 还可以写成 value="%{label}" label可以有.操作
label的属性List 可以写成value="%{label.list}" 相当于:getLabel().getList();
4:遍历2个list;
List<AttrName> attrN {color,size,style}
List<AttrValue> attrV {red,20,gay}
这2个list的元素是一一对应的,一个attrN对应一个attrV
<s:iterator value="%{attrN }" id="id" status="status">
index is : <s:property value='status.index'/>
attrName is : <s:property value='id'/> or <s:property value='%{id}'/>
attrName is : <s:property value='%{attrV[#status.index]}'/>
</s:iterator>
分享到:
相关推荐
在Struts2框架中,`<s:iterator>`标签是一个非常强大的工具,用于在JSP页面上循环遍历集合数据,如列表(List)、数组、Map等。它允许开发者以一种动态且灵活的方式展示来自后端的数据,从而极大地提高了开发效率和...
### Struts2 `<s:if>` 标签使用详解 #### 概述 Struts2 是一款基于 Java 的企业级 Web 应用框架,它利用了 MVC(Model-View-Controller)架构模式来帮助开发者构建可扩展、易于维护的 Web 应用程序。在 Struts2 中...
1. Action标签:用于执行一个Struts2 Action,如`s:action`。 2. Result标签:用于在Action执行后显示结果页面,如`s:result`。 3. Form标签:用于创建表单,如`s:form`。 4. Field标签:用于处理表单字段,如`s:...
### Struts2中的S标签详解 #### 一、概述 Struts2框架是Apache软件基金会下的一个开源项目,它提供了一种基于MVC(Model-View-Controller)设计模式的Web应用开发框架。Struts2提供了丰富的标签库,其中“S标签”...
这个“Struts2标签库详解(非常不错)”的资源应该包含了对Struts2所有标签的详细介绍,以及相关的API文档。 Struts2标签库的核心在于提供了一种声明式编程的方式,使得开发者可以更专注于业务逻辑,而不是繁琐的JSP...
在 Struts2 中,`s:iterator` 标签是一个非常重要的标签,它用于遍历集合(如数组、列表、Map 等)并展示其内容。这篇文档详细讲解了 `s:iterator` 标签的使用方法以及 OGNL(Object-Graph Navigation Language)的...
### Struts2常用标签详解(实用版) #### 引言 在Java Web开发领域中,Struts2框架因其丰富的功能及灵活的配置而备受开发者们的青睐。为了更好地掌握Struts2框架并提升开发效率,本文将详细介绍Struts2中常用的...
在Struts2中,`s:iterator`标签是用于迭代集合数据并在JSP页面上展示的重要标签。本篇文章将深入讲解`s:iterator`标签的使用及其与OGNL(Object-Graph Navigation Language)的结合应用。 1. **s:iterator标签的...
以上只是Struts2标签库中的一部分,实际上还有许多其他标签,如`s:include`、`s:actionerror`、`s:label`等,它们共同构成了Struts2强大的表现层工具。熟练掌握这些标签,能够帮助开发者更高效地构建动态、交互性强...
- `s:iterator`:迭代标签,可以遍历集合或数组,用于循环渲染数据。 - `s:switch` 和 `s:case`:用于条件分支,类似于Java的switch语句。 - `s:include`:包含其他JSP页面或Action结果,实现页面的重用。 除了...
Struts2 标签库详解 Struts2 提供了一个强大的标签库,用于简化 Web 应用程序的开发过程。这些标签可以分为两类:通用标签和 UI 标签。下面,我们将详细介绍 Struts2 标签库的使用。 4.1 通用标签 通用标签用来...
- **遍历数组或列表**:`<s:iterator value="{'1','2','3','4','5'}" id='number'>...</s:iterator>` 这个例子中,`siterator` 标签将遍历给定的字符串数组,并为每个元素提供 ID 'number'。 - **利用 status 获取...
Struts2标签详解与实例 在Java Web开发中,Struts2框架因其强大的MVC(模型-视图-控制器)架构而备受青睐。Struts2提供了丰富的标签库,简化了视图层的开发,使开发者可以更加专注于业务逻辑。本文将深入探讨Struts...
Struts2标签是Java开发中一个非常重要的工具,它极大地简化了MVC框架下的视图层构建,使得开发者能够...提供的“Struts2标签详解.doc”文档将对这些概念进行详细的解释,是深入学习和理解Struts2标签的重要参考资料。
例 2: 限制迭代器长度 <s:generator val="%{'aaa,bbb,ccc,ddd,eee'}" count="3"> <s:iterator> <s:property /> </s:iterator> </s:generator> ``` **UI标签** UI标签主要用于构建用户界面,如表单元素、...
### Struts2 实现分页及 `<s:bean>` 标签详解 #### 一、Struts2 分页概述 在 Java Web 开发中,为了提高用户体验并减轻服务器负担,通常采用分页技术来展示数据。Struts2 框架提供了一套强大的工具和标签库来帮助...
Struts2是一个强大的MVC框架,它提供了丰富的标签库来简化JSP页面的编写,使得开发者可以更加专注于业务逻辑而不是页面展示的细节。本篇主要介绍Struts2中的标签库,特别是通用标签和UI标签。 首先,Struts2的标签...