1.使用iterator 标签 遍历 数组,Map,List
2.action
3.struts.xml
4.index.jsp
2.action
package com.sh.action;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.opensymphony.xwork2.ActionSupport;
import com.sh.pojo.User;
public class MapAction extends ActionSupport {
//遍历数组
private String [] arryStr;
//遍历list
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;
public String testMap(){
arryStr=new String[]{"admin","loclku","kinqij","junsldu","uonyulu"};
list=new ArrayList<User>();
list.add(new User(1, "admin1", "123", 10));
list.add(new User(2, "admin2", "123", 20));
list.add(new User(3, "admin3", "123", 30));
map=new HashMap<String, String>();
map.put("1", "one");
map.put("2", "two");
userMap=new HashMap<Integer, User>();
userMap.put(new Integer(1), new User(1, "admin", "123", 18));
userMap.put(new Integer(2), new User(2, "admin2", "123", 28));
userMap.put(new Integer(3), new User(3, "admin3", "123", 38));
arrayMap=new HashMap<String, String[]>();
arrayMap.put("arr1", new String[]{"1","sal","28"});
arrayMap.put("arr2", new String[]{"2","20200","malie","18"});
arrayMap.put("arr3", new String[]{"3","20200","malie","salke","18"});
userListMap=new HashMap<String, List<User>>();
List<User> list=new ArrayList<User>();
list.add(new User(4, "admin4", "456", 38));
list.add(new User(5, "admin5", "457", 48));
list.add(new User(6, "admin6", "467", 58));
userListMap.put("class1", list);
List<User> list1=new ArrayList<User>();
list1.add(new User(7, "admin7", "476", 58));
list1.add(new User(8, "admin8", "487", 68));
list1.add(new User(9, "admin9", "497", 78));
userListMap.put("class2", list1);
return SUCCESS;
}
//get set
}
3.struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<!-- 定义国际化资源文件的基本名称 -->
<constant name="struts.i18n.encoding" value="utf-8"/>
<package name="/user" extends="struts-default">
<action name="testMap" class="com.sh.action.MapAction" method="testMap">
<result name="success">/index.jsp</result>
</action>
</package>
</struts>
4.index.jsp
<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>
</center>
</body>