详解Struts2标签遍历

 更新时间:2017年09月27日 09:43:11   作者:lufeng66  
这篇文章主要介绍了Struts2标签遍历,以及相关的用法示例,需要的朋友可以参考下。

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

s:iterator 标签有3个属性:

    value:被迭代的集合

    id   :指定集合里面的元素的id,可以和var属性替换

    status 迭代元素的索引

1:jsp页面定义元素写法数组或list

<s:iterator value="{'1','2','3','4','5'}" id='n'>
  <s:property value='n'/>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

4:遍历数据栈.简单的List类

<s:iterator value="data.datas" var="student" status="st">
 <tr align="center">
 <td>
  <s:property value="#student.id" />
 </td>
 <td>
  <s:property value="#student.name" />
 </td>
 <td>
  <s:date name="#student.birth" fomart="yyyy/MM/dd hh:mm:ss"/>
 </td>
 </tr>
</s:iterator>

5:遍历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 value="data.datas" var="student" status="st">
 <tr align="center">
 <td>
  <s:property value="#student.id" />
 </td>
 <td>
  <s:property value="#student.name" />
 </td>
 <td>
  <s:date value="#student.birth" fomart="yyyy/MM/dd hh:mm:ss"/>
 </td>
 <td>
  <s:date value="classlist[#st.index].classname"/>
 </td>
 </tr>
</s:iterator>
</s:iterator>

总结

以上就是本文关于详解Struts2标签遍历的全部内容,希望对大家有所帮助,感兴趣的朋友可以参阅:Struts2截取字符串代码介绍  Struts和servlet不能共存问题解决方法  Struts2修改上传文件大小限制方法解析 等,欢迎大家浏览本站其他相关专题。

相关文章

  • Java获取随机数的n种方法

    Java获取随机数的n种方法

    项目中,我们常常会用到随机数,本文主要介绍了Java获取随机数的n种方法,具有一定的参考价值,感兴趣的可以了解一下
    2023-11-11
  • Java排序算法之桶排序算法解析

    Java排序算法之桶排序算法解析

    这篇文章主要介绍了Java排序算法之桶排序算法解析,桶排序 (Bucket sort)或所谓的箱排序,是一个排序算法,工作原理是将数组分到有限数量的桶子里,每个桶子再个别排序,有可能再使用别的排序算法或是以递归方式继续使用桶排序进行排序,需要的朋友可以参考下
    2023-10-10
  • java Person,Student,GoodStudent 三个类的继承、构造函数的执行

    java Person,Student,GoodStudent 三个类的继承、构造函数的执行

    这篇文章主要介绍了java Person,Student,GoodStudent 三个类的继承、构造函数的执行,需要的朋友可以参考下
    2017-02-02
  • java 算法之希尔排序详解及实现代码

    java 算法之希尔排序详解及实现代码

    这篇文章主要介绍了java 算法之希尔排序详解及实现代码的相关资料,需要的朋友可以参考下
    2017-03-03
  • Java8 LocalDateTime时间日期类使用实例详解

    Java8 LocalDateTime时间日期类使用实例详解

    本文从 LocalDateTime 类的创建、转换、格式化与解析、计算与比较以及其他操作几个方面详细介绍了 LocalDateTime 类在 Java 8 中的使用,感兴趣的朋友跟随小编一起看看吧
    2024-03-03
  • springcloud项目里application.yml不加载的坑及解决

    springcloud项目里application.yml不加载的坑及解决

    这篇文章主要介绍了springcloud项目里application.yml不加载的坑及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • JAVA十大排序算法之归并排序详解

    JAVA十大排序算法之归并排序详解

    这篇文章主要介绍了java中的归并排序,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-08-08
  • Spring中@Autowired注解在不同方法的写法示例

    Spring中@Autowired注解在不同方法的写法示例

    这篇文章主要为大家介绍了Spring中@Autowired注解在不同方法的写法示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-01-01
  • 浅析java volatitle 多线程问题

    浅析java volatitle 多线程问题

    Volatile修饰的成员变量在每次被线程访问时,都强迫从共享内存中重读该成员变量的值。而且,当成员变量发生变化时,强迫线程将变化值回写到共享内存
    2013-08-08
  • MyBatis中的resultMap简要概述

    MyBatis中的resultMap简要概述

    这篇文章主要介绍了MyBatis中的resultMap简要概述的相关资料,需要的朋友可以参考下
    2016-07-07

最新评论