`

Struts2标签 iterator

阅读更多

struts2的s:iterator 可以遍历 数据栈里面的任何数组,集合等等 以下几个简单的demo:

1.s:iterator 标签有3个属性:
    value:被迭代的集合
    id   :指定集合里面的元素的id
    status 迭代元素的索引

 

迭代数据
<s:iterator value="#request.names" status="stuts">
    <s:if test="#stuts.odd == true">
 <li>White <s:property/></li>
    </s:if>
    <s:else>
 <li style="background-color:blue"><s:property/></li>
    </s:else>
</s:iterator>

迭代数据显示前五条
<s:subset source="#list对象或者是数组对象" start="0" count= "5" > 
<s:iterator id="bean" status = "counts" > 
<s:property value="#bean.属性名" /> 
</s:iterator> 
</s:subset> 

 

2: 索引的用法

如果指定了status,每次的迭代数据都有IteratorStatus的实例,它有以下几个方法
int getCount()返回当前迭代了几个元素
int getIndex()返回当前元素索引
boolean isEven()当然的索引是否偶数
boolean isFirst()当前是否第一个元素
boolean isLast()
boolean isOdd() 当前元素索引是否奇数

索引值
<s:property value="#st.index+1"/>

<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>

如果是显示多行多列 
<table width="800px" align="center"> 
<tr> 
<s:iterator value="songs" status="st">   
<td> 
<input type="checkbox" name="songIds" 
id="<s:property value='id'/>" value="<s:property value='id'/>"><label for="<s:property value='id'/>" class="checkboxLabel"><s:property value="name"/> 
</td> 
<s:if test="#st.modulus(2)==0"> 
<s:if test="#st.last"> 
</tr></s:if> 
<s:else> 
</tr><tr></s:else> 
</s:if> 
</s:iterator> 
</table> 

 

<s:if test="#st.modulus(2)==0"> 也可以用<s:if test="#st.getIndex()%2==0)

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

4:遍历数据栈.简单的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();

5:遍历2个list;

这2个 list的元素是一一对应的,一个attrN对应一个attrV

List<AttrName> attrN {color,size,style}
List<AttrValue> attrV {red,20,gay}

<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 标签iterator使用

    在Struts2框架中,`&lt;s:iterator&gt;`标签是一个非常强大的工具,用于遍历集合或数组中的元素,尤其在处理列表数据时极为有用。通过本文档提供的代码示例,我们将深入探讨`&lt;s:iterator&gt;`标签的使用方法及其与不同数据...

    struts2中iterator 标签的使用详解

    ### Struts2中Iterator标签的深入解析与应用 在Struts2框架中,`&lt;s:iterator&gt;`标签是一个非常强大的工具,用于在JSP页面上循环遍历集合数据,如列表(List)、数组、Map等。它允许开发者以一种动态且灵活的方式展示...

    struts2标签库例子

    Struts2 标签库详解 Struts2 提供了一个强大的标签库,用于简化 Web 应用程序的开发过程。这些标签可以分为两类:通用标签和 UI 标签。下面,我们将详细介绍 Struts2 标签库的使用。 4.1 通用标签 通用标签用来...

    struts2标签使用例子

    在Struts2框架中,标签库是其一大特色,它提供了丰富的自定义标签,使得开发者能够更加便捷地创建动态页面。这些标签极大地简化了JSP页面的编写,提高了代码的可读性和可维护性。 1. **Struts2核心标签库**: - `s...

    Struts2标签集锦(附Struts2标签详解word文档)

    Struts2标签是Java开发中一个非常重要的工具,它极大地简化了MVC框架下的视图层构建,使得开发者能够更加高效地实现动态网页。在Struts2框架中,标签库是一系列预定义的JSP标签,它们提供了丰富的功能,如数据绑定、...

    Struts2标签使用及API文档

    在Struts2框架中,标签库是其重要组成部分,它提供了丰富的标签来帮助开发者更方便地构建用户界面。下面我们将深入探讨Struts2标签的使用及其API文档。 1. **Struts2标签的分类与功能** - **控制标签**:如`s:if`,...

    struts2 标签库 帮助文档

    Struts 2 标签库(文档手册) Tags-API-CLSW-JSP &lt;%@ taglib prefix="s" uri="/struts-tags" %&gt; 就能使用struts2.0的标签库 下面就介绍每个标签的具体应用实例说明:按字母排列 A: 1. 2. &lt;s:a href=""&gt;&lt;/s:a&gt;-...

    struts2 iterator标签遍历二维数组

    在Struts2框架中,`&lt;s:iterator&gt;`标签被广泛用于遍历集合或数组等数据结构。本文将深入探讨如何使用Struts2中的`&lt;s:iterator&gt;`标签来遍历二维数组,并通过实例代码来具体说明其用法。 ### Struts2 Iterator标签 ##...

    struts2标签库

    Struts2标签库是专为Struts2框架设计的一组JSP标签,旨在简化视图层的开发,提高代码的可读性和维护性。这些标签分为UI标签和非UI标签,分别用于生成HTML元素和处理数据访问及逻辑控制。通过使用标签库,开发者可以...

    Struts2 iterator 标签遍历 Map,List,数组(三十六)

    在Struts2中,`iterator`标签是用于遍历集合数据的重要工具,它可以用来迭代Map、List和数组等数据结构,以便在视图层进行展示。本篇文章将深入探讨`iterator`标签在遍历这些数据类型时的具体用法。 首先,我们来看...

    Struts2实例 国际化 类型转换 struts标签

    这个实例项目展示了如何在实际应用中结合Struts2、国际化、类型转换以及Struts2自定义标签来实现用户管理功能,包括用户数据的增删改查。 首先,我们来看Struts2的核心概念。Struts2作为MVC框架,它负责处理HTTP...

    struts2 标签 tags API 参考文档

    参考文档是开发者理解和使用Struts2标签的关键资源,它详细阐述了每个标签的功能、属性、用法及示例,有助于快速学习和掌握Struts2的视图层开发。 通过深入学习和实践Struts2的标签API,开发者可以有效地提升Web...

    Struts2之struts2标签库了解和使用案例struts025

    首先,Struts2标签库分为两大类:核心标签库和展示标签库。核心标签库提供了一组基础功能,如表单处理、控制流程、消息显示等,而展示标签库则包含更具体的UI元素,如数据展示、分页等。了解这些标签库的使用,可以...

    struts2标签用法详解

    Struts2标签是Struts2框架提供的一种强大的视图层技术,它极大地简化了JSP页面的编写,提高了代码的可读性和可维护性。在本文中,我们将深入探讨Struts2标签的用法,包括它们的基本概念、类型以及如何在实际开发中...

    struts2标签+ tiles lib

    本文将深入探讨Struts2标签和Tiles库的使用,以及它们在实际开发中的应用。 1. **Struts2标签** Struts2提供了丰富的标签库,这些标签使得开发者能够在JSP页面中方便地实现业务逻辑和控制流程。例如: - `s:...

    Struts2标签中文文档(html和chm格式)

    2. **控制标签**:如`s:if`、`s:iterator`等,提供了条件判断和循环控制。这些标签允许在JSP页面上实现逻辑控制,使得页面代码更加清晰。 3. **数据标签**:如`s:property`、`s:label`等,用于显示和操作数据。它们...

    struts2标签解析

    Struts2标签库是Java Web开发中的一个强大工具,它为开发者提供了丰富的UI组件和控制逻辑,极大地简化了视图层的代码编写。Struts2框架的标签库基于OGNL(Object-Graph Navigation Language)表达式语言,使得在JSP...

    struts2标签库详解(非常不错)

    Struts2标签库是开发Java Web应用程序的重要工具,它提供了丰富的UI组件和逻辑控制标签,大大简化了视图层的编码工作。这个“Struts2标签库详解(非常不错)”的资源应该包含了对Struts2所有标签的详细介绍,以及相关...

Global site tag (gtag.js) - Google Analytics