关键字: struts2, 标签, s:iterator
<noscript type="text/javascript"></noscript>
struts2的s:iterator 可以遍历 数据栈里面的任何数组,集合等等 以下几个简单的demo:
s:iterator 标签有3个属性:
value:被迭代的集合
id :指定集合里面的元素的id
status 迭代元素的索引
1:jsp页面定义元素写法 数组或list
1.<s:iterator value= "{'1','2','3','4','5'}" id= 'number' >
2. <s:property value= 'number' />A
3.</s:iterator>
打印结果为: 1A2A3A4A5A
2:索引的用法
struts2.0 的遍历控件<s:iterator>中的index状态:
1:odd(奇数)
2:first(首索引)
3:even(偶数)
4:last(尾索引)
5:index(索引项)
如果指定了status,每次的迭代数据都有IteratorStatus的实例,它有以下几个方法
int getCount()返回当前迭代了几个元素
int getIndex()返回当前元素索引
boolean isEven()当然的索引是否偶数
boolean isFirst()当前是否第一个元素
boolean isLast()
boolean isOdd()当前元素索引是否奇数
1.<s:iterator value= "{'a','b','c'}" id= 'char' status= 'st' >
2. <s: if test= "#st.Even" >
3. 现在的索引是奇数为:<s:property value= '#st.index' />
4. </s: if >
5. 当前元素值:<s:property value= 'char' />
6.</s:iterator>
3:遍历map
value可以直接定义为:
1.value= "#{" 1 ":" a "," 2 ":" b "}"
每个元素以都好隔开。元素之间的key和value 冒号隔开
value也可以是数据栈里面的java.util.Map对象
遍历写法如下:
1.<s:iterator value= "map" id= "id" status= "st" >
2. key : <s:property value= 'key' />
3. value:<s:property vlaue= 'value' />
4.</s:iterator>
当然key 和value 都可以使java 的 Object
3:遍历数据栈.简单的List类,
List<Attr>
class Attr{String attrName;String getAttrName(){return "123";}}
1.<s:iterator value= "label" id= "id" >
2. <s:property value= "#id.attrName" />
3.</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
1.< s:iterator value = "%{attrN }" id = "id" status = "status" >
2. index is : < s:property value = 'status.index' />
3. attrName is : < s:property value = 'id' /> or < s:property value = '%{id}' />
4. attrName is : < s:property value = '%{attrV[#status.index]}' />
5.</ s:iterator >
分享到:
相关推荐
### Struts2中Iterator标签的深入解析与应用 在Struts2框架中,`<s:iterator>`标签是一个非常强大的工具,用于在JSP页面上循环遍历集合数据,如列表(List)、数组、Map等。它允许开发者以一种动态且灵活的方式展示...
在Struts2框架中,`<s:iterator>`标签是一个非常强大的工具,用于遍历集合或数组中的元素,尤其在处理列表数据时极为有用。通过本文档提供的代码示例,我们将深入探讨`<s:iterator>`标签的使用方法及其与不同数据...
### Struts2 Iterator标签 #### 1. 基本概念 `<s:iterator>`是Struts2的一个非常强大的标签,主要用于处理列表、数组等迭代数据。它可以方便地遍历集合或数组,并支持在遍历时获取当前索引、总数等信息。 #### 2....
Struts2 标签库详解 Struts2 提供了一个强大的标签库,用于简化 Web 应用程序的开发过程。这些标签可以分为两类:通用标签和 UI 标签。下面,我们将详细介绍 Struts2 标签库的使用。 4.1 通用标签 通用标签用来...
在Struts2中,`iterator`标签是用于遍历集合数据的重要工具,它可以用来迭代Map、List和数组等数据结构,以便在视图层进行展示。本篇文章将深入探讨`iterator`标签在遍历这些数据类型时的具体用法。 首先,我们来看...
在Struts2框架中,标签库是其一大特色,它提供了丰富的自定义标签,使得开发者能够更加便捷地创建动态页面。这些标签极大地简化了JSP页面的编写,提高了代码的可读性和可维护性。 1. **Struts2核心标签库**: - `s...
Struts1.2标签是Java Web开发中Struts框架的一部分,它提供了一种在JSP页面中更加便捷、可维护的方式来处理业务逻辑和控制流程。Struts1.2标签库大大简化了视图层的开发,使开发者可以避免过多地在JSP中编写Java脚本...
1. **核心标签(Core Tags)**:这是最基本的标签集,包括显示和控制逻辑的标签,如`<s:property>`用于显示字段值,`<s:if>`和`<s:else>`进行条件判断,以及`<s:iterator>`用于遍历集合。 2. **表单标签(Form Tags...
在Struts2框架中,标签库是其重要组成部分,它提供了丰富的标签来帮助开发者更方便地构建用户界面。下面我们将深入探讨Struts2标签的使用及其API文档。 1. **Struts2标签的分类与功能** - **控制标签**:如`s:if`,...
`<s:iterator>`是Struts2中的一个标签,用于迭代集合或者数组中的元素。在处理Map时,我们可以使用这个标签来迭代键值对,并在JSP页面上显示它们。 在描述中提到的"嵌套Map"是指Map的值本身还是另一个Map。这种结构...
例如,`<s:property>`标签用于显示Action对象的属性值,`<s:form>`用于创建HTML表单,`<s:iterator>`遍历集合并渲染,`<s:if>`和`s:else`进行条件判断等。在使用Struts标签时,需要确保已经导入了Struts的标签库,...
Struts2标签库是Java开发Web应用程序时常用的一个强大工具,尤其在构建MVC(Model-View-Controller)架构的应用程序中发挥着重要作用。Struts2框架提供了丰富的自定义标签库,极大地简化了视图层的开发,使得开发者...
流程控制标签,如`<s:if>`、`<s:elseif>`和`<s:iterator>`,用于实现条件判断和循环。数据访问标签,如`<s:set>`和`s:get>`,用于在ValueStack中设置和获取值,实现数据的传递和操作。此外,Struts2还提供了Ajax标签...
5. Iterator标签:用于遍历集合,如`s:iterator`。 6. If标签:条件判断,如`s:if`。 7. Choose(when/otherwise)标签:用于条件选择,类似于Java中的switch语句。 8. Include标签:用于包含其他页面,如`s:include...
10. `s:iterator`: 循环标签,常用于遍历集合数据,如List、Map等。 11. `s:include` 和 `s:useBean`: 分别用于包含其他页面和实例化Java Bean。 Struts2标签库API文档详细列出了每个标签的属性、用法和示例,帮助...
Struts2是一个强大的MVC框架,它提供了丰富的标签库,使得开发者在编写JSP页面时能够更加方便地处理业务逻辑和展示数据。本篇文章主要关注Struts2中的常用标签,这些标签大大简化了Web开发中的一些常见任务。 首先...
8. `s:iterator`: 迭代标签,用于遍历集合、数组或者Map。通过`value`属性指定迭代源,`status`或`var`属性可以创建一个变量来存储当前迭代状态或元素。 9. `s:if`和`s:else`: 条件判断标签,可以基于OGNL表达式的...
2. **控制标签**:如`s:if`、`s:iterator`等,提供了条件判断和循环控制。这些标签允许在JSP页面上实现逻辑控制,使得页面代码更加清晰。 3. **数据标签**:如`s:property`、`s:label`等,用于显示和操作数据。它们...