我是靠谱客的博主 大力蜡烛,最近开发中收集的这篇文章主要介绍struts2标签遍历各种形式数据集合,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在类中定义的集合类型如下:
private String [] arryStr;
private List<User> list;
private Map<String,String> map;
private Map<Integer,User> userMap;
private Map<String,String[]> arrayMap;
private Map<String,List<User>> userListMap;
private List<Object[]> olist;

 对应的在jsp页面中使用struts2标签遍历如下:
 <body>
<center>
<br/>======iterator遍历String 字符数组======<br/>
<s:iterator value="arryStr" id="array">
<s:property value="array"/><br/>
</s:iterator>
<div></div>
<br/>======iterator遍历List集合======<br/>
<table border="1" width="50%" cellpadding="0" cellspacing="0">
<tr style="background-color: yellow">
<td>id</td>
<td>name</td>
<td>pwd</td>
<td>age</td>
</tr>
<s:iterator value="list" id="array">
<tr>
<td><s:property value="id"/></td>
<td><s:property value="name"/></td>
<td><s:property value="pwd"/></td>
<td><s:property value="age"/></td>
</tr>
</s:iterator>
</table>
<br/>======iterator遍历Map中的String字符串======<br/>
<s:iterator value="map" id="column">
<s:property value="#column"/><br/>
Key:<s:property value="key"/><br/>
Value:<s:property value="value"/><br/>
</s:iterator>
<div></div>
<br/>======iterator遍历Map中的User 对象(Object)======<br/>
<table border="1" width="50%" cellpadding="0" cellspacing="0">
<tr style="background-color: yellow">
<td>key=value</td>
<td>id</td>
<td>name</td>
<td>pwd</td>
<td>age</td>
</tr>
<s:iterator value="userMap" id="column">
<tr>
<td><s:property value="#column"/></td>
<td><s:property value="value.id"/></td>
<td><s:property value="value.name"/></td>
<td><s:property value="value.pwd"/></td>
<td><s:property value="value.age"/></td>
</tr>
</s:iterator>
</table>
<br/>======iterator遍历Map中的String字符数组======
<s:iterator value="arrayMap" id="column">
<div><s:property value="#column"/></div>
-------------------key:<s:property value="key"/>--------------------<br/>
<s:iterator value="value" id="col">
<s:property value="col"/><br/>
</s:iterator>
<div></div>
</s:iterator>
<br/>======iterator遍历Map中的List集合======
<table border="1" width="50%" cellpadding="0" cellspacing="0">
<tr style="background-color: yellow">
<td>key</td>
<td>id</td>
<td>name</td>
<td>pwd</td>
<td>age</td>
</tr>
<s:iterator value="userListMap" id="column">
<s:set var="total" name="total" value="#column.value.size"/>
<s:iterator value="#column.value" id="col" status="st">
<tr>
<s:if test="#st.first"><td rowspan="${total}"><s:property value="#column.key"/></td></s:if>
<td><s:property value="id"/></td>
<td><s:property value="name"/></td>
<td><s:property value="pwd"/></td>
<td><s:property value="age"/></td>
</tr>
</s:iterator>
</s:iterator>
</table>
<br/>======iterator遍历object[]中的List集合======
<table border="1" width="50%" cellpadding="0" cellspacing="0">
<tr style="background-color: yellow">
<td>key</td>
<td>id</td>
<td>name</td>
</tr>
<s:iterator value="olist" id="value"
status="st">
<tr>
<td><s:property value="olist[#st.index][0]"/></td>
<td><s:property value="olist[#st.index][1]"/></td>
<td><s:property value="olist[#st.index][2]"/></td>
</tr>
</s:iterator>
</table>
</center>
</body>

本人测试木有问题,欢迎大家参考

另外附上struts2遍历集合的用法介绍:

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的实例,它有以下几个方法

<s:iterator 中的status 使用方法

1:#status.odd 当前元素索引是否奇数行

2:#status.even 当前元素索引是否偶数

3:#status.count 当前迭代了几个元素
4:#status.index当前元素索引,从0开始『#status.count=#status.index+1』

5:#status.first 当前是否第一个元素
6:#status.last 当前是否最后一个元素
7:#status.modules(int)当前行数取模 
 


最后

以上就是大力蜡烛为你收集整理的struts2标签遍历各种形式数据集合的全部内容,希望文章能够帮你解决struts2标签遍历各种形式数据集合所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部