`

struts2 iterator

阅读更多
<script type="text/javascript"></script> struts iterator的用法重要
  1. 1、输出session中的值   
  2. a. <s:property value="#session['key']"/>  
  3. b. ${sessionScope.key}   
  4.   
  5. 2、获取session中的值后判断   
  6. <s:if test="#session['key']==null">  
  7.   
  8. 3、输出Action中的属性值   
  9. <s:property value="property"/>  
  10.   
  11. 4、输出国际化文件中的值   
  12. a. <s:text name="key"/>  
  13. b. ${getText("key")}   
  14.   
  15. 5、输出Action中的消息   
  16. <s:actionmessage />  
  17.   
  18. 6、输出Action中的错误   
  19. <s:actionerror/>  
  20.   
  21. 7、迭代输出集合   
  22. <s:iterator id="book" value="books" status="index">  
  23.   
  24.      <!---输出当前元素的属性-->  
  25.      <s:property value="property"/>  
  26.   
  27.      <!---输出当前迭代元素的索引-->  
  28.      <s:property value="#index.index"/>  
  29.   
  30.      <!---输出当前迭代了几个元素-->  
  31.      <s:property value="#index.count"/>   
  32.   
  33.       <!---返回当前迭代元素的索引是否为奇数-->  
  34.      <s:property value="#index.odd"/>   
  35.   
  36.      <!---返回当前迭代元素的索引是否为偶数-->  
  37.      <s:property value="#index.event"/>  
  38.   
  39.      <!---返回当前元素是否为第一个-->  
  40.      <s:property value="#index.first"/>  
  41.   
  42.      <!---返回当前元素是否为最后一个-->  
  43.      <s:property value="#index.last"/>  
  44.   
  45. </s:iterator>  
  46.   
  47. 8、定义页面变量   
  48. <!---将分页Bean的属性放入Stack Context-->  
  49. <s:set name="count" value="%{pager.totalPages}"/>  
  50.   
  51. <!---利用Struts2标签访问-->  
  52. <s:property value="#count"/>  
  53.   
  54. <!---利用OGNL表达式访问-->  
  55. ${pageScope.count }   
  56.   
  57. <!---利用Java代码访问-->  
  58. <%      
  59.       Object obj = pageContext.getAttribute("count");       
  60.       int mycount = Integer.parseInt(obj.toString());   
  61.       for(int i =0;i<mycount;i++){   
  62.             out.print(i+1);   
  63.       }   
  64. %>  
  65. 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:索引的用法
    如果指定了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框架中,`&lt;s:iterator&gt;`标签被广泛用于遍历集合或数组等数据结构。本文将深入探讨如何使用Struts2中的`&lt;s:iterator&gt;`标签来遍历二维数组,并通过实例代码来具体说明其用法。 ### Struts2 Iterator标签 ##...

    struts2中iterator 标签的使用详解

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

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

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

    一个运用Extjs,Struts2, json,iterator技术构建的iterator_jsonDemo2。 将数据从后台传到Extjs表现层。

    一个运用Extjs,Struts2, json,iterator技术构建的iterator_jsonDemo2。iterator_jsonDemo1的链接:http://download.csdn.net/detail/cafebar123/8816409 运用了Extjs,Struts2, json,iterator技术, 将数据从...

    struts2 标签iterator使用

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

    iterator嵌套,struts2

    在Struts2框架中,`iterator`标签是一个非常重要的组件,用于遍历各种集合对象,如List、Map等。在上述描述中,开发者遇到了一个关于`iterator`标签嵌套使用的问题,涉及到`LinkedHashMap`存储的数据结构。让我们...

    对 Struts 2 的 s: iterator tag 中嵌套的所有 s: checkbox 进行全选、反选操作

    在这个场景中,我们关注的是`s:iterator`标签和`s:checkbox`的使用,它们是Struts 2 中视图层(JSP)的重要组件,用于迭代数据集合并呈现复选框。在Web应用中,用户经常需要进行全选和反选的操作,这通常在管理多个...

    struts2简单例子

    Struts2是一个强大的Java EE应用程序框架,用于构建MVC(模型-视图-控制器)架构的Web应用。这个“struts2简单例子”是初学者理解Struts2工作原理和核心概念的一个很好的起点。让我们深入探讨一下Struts2的基础知识...

    Struts iterator JSP Map 中嵌套 Map

    `&lt;s:iterator&gt;`是Struts2中的一个标签,用于迭代集合或者数组中的元素。在处理Map时,我们可以使用这个标签来迭代键值对,并在JSP页面上显示它们。 在描述中提到的"嵌套Map"是指Map的值本身还是另一个Map。这种结构...

    struts2讲义 struts2讲义struts2讲义struts2讲义struts2讲义

    ### Struts2讲义知识点概览 #### 一、Struts2的历史与发展 - **Struts框架的发展历程**: - Struts最初版本发布于2000年,是Java Web开发领域的一个重要里程碑。 - 随着时间的发展和技术的进步,Struts逐渐暴露...

    struts2增删改查,struts2分页查询

    在探讨Struts2框架下的增删改查以及分页查询功能时,我们首先需要理解Struts2框架本身。Struts2是Apache软件基金会的一个开源Web应用框架,它继承了Struts1的一些特性,并在此基础上进行了大量的改进和扩展,提供了...

    struts2标签库例子

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

    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案例翻译篇-Using Struts2 Tag

    Struts2是一个强大的Java web框架,它提供了丰富的功能来构建MVC(模型-视图-控制器)架构的应用程序。在Struts2中,Tag库是其核心组件之一,极大地简化了视图层的开发,使得开发者可以更方便地创建动态网页。本篇将...

    struts2标签使用例子

    Struts2是一个强大的MVC(模型-视图-控制器)框架,用于构建企业级Java Web应用程序。在Struts2框架中,标签库是其一大特色,它提供了丰富的自定义标签,使得开发者能够更加便捷地创建动态页面。这些标签极大地简化...

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

    Struts2是一个强大的MVC(模型-视图-控制器)框架,被广泛应用于Java Web开发。这个实例项目展示了如何在实际应用中结合Struts2、国际化、类型转换以及Struts2自定义标签来实现用户管理功能,包括用户数据的增删改查...

    自己写的 Struts 2源代码 例子(包括Struts2 标签)

    Struts 2是一款强大的MVC(Model-View-Controller)框架,它在Java Web开发中广泛应用,极大地简化了企业级应用的构建。本压缩包包含的源代码例子旨在帮助理解Struts 2的工作原理和使用方式,特别是Struts 2的标签库...

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

    Struts2是一个强大的Java EE应用程序框架,用于构建和维护可扩展、模块化和易于管理的Web应用程序。在Struts2中,标签库是其核心组件之一,极大地简化了视图层的开发,使得开发者可以更加专注于业务逻辑而不是繁琐的...

    struts2实现分页

    本文将详细介绍如何利用 Struts2 的 `&lt;s:bean&gt;` 标签结合 `&lt;s:iterator&gt;` 标签来实现分页。 #### 二、`&lt;s:bean&gt;` 标签介绍 `&lt;s:bean&gt;` 是 Struts2 提供的一个用于创建 bean 实例的标签。它支持创建一个指定类的...

Global site tag (gtag.js) - Google Analytics