首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

iterator 迭代标签 在迭代地图的时候的巧妙使用

2012-11-25 
iterator 迭代标签 在迭代map的时候的巧妙使用ListMapString,Object maps new ArrayListMapString

iterator 迭代标签 在迭代map的时候的巧妙使用

List<Map<String,Object>> maps = new ArrayList<Map<String,Object>>();

?

Map<String,Object> map1 = new HashMap<String,Object>();

Person person1 = new Person();

person1.setPid(1L);
person1.serPname("person1")

map1.put("m1",person1);
-------------------------------------------------------
Map<String,Object> map2 = new HashMap<String,Object>();

Person person2 = new Person();

person2.setPid(2L);
person2.serPname("person2")

map2.put("m2",person2);
------------------------------
maps.add(map1);

maps.add(map2);

// 把List集合放到map栈里边了
ActionContext.getContext().put("maps",maps);


------------------------------
在jsp中迭代出来 List<Map<String,Object>> maps

在迭代map的时候 可以利用这种方式

<s:property value="key"/>
<s:property value="value"/>
-----------------------------------
<s:iterator value="maps">

<!---我这里的Map 代表了List集合中的每一个元素,
当迭代List的时候,把把list中的每一个元素也就是每一个Map依次放到了栈顶
->

?<s:iterator> <!--注意iterator标签莫有value属性的时候 就默认迭代栈顶的元素-->

?<!--还可以使用top关键字,也是默认迭代栈顶的元素-->
???????????? <s:iterator value="top"> <!--当每一个Map被放到栈顶的时候,在迭代Map中的每一个Person-->

?????????????????????????????? <s:property value="key"/>
?????????????????????????????? <s:property value="value.pid"/>
????????????????? <s:property value="value.pname"/> <!--vlaue就是在Map的value位置上就代表了一个Person-->
??????????? </s:iterator>

</s:iterator>

-----------------------------
Map<String,List>

<s:iterator value="map">
???? <s:property value="key">
?
<!--value就代表Map中的value,因为是在Map的value位置上是一个List集合,所以用iterator迭代-->
????? <s:iterator value="value">
????????????????? ?<s:property value="pid">
?????????????????? <s:property value="pname">
?
?????? </s:iterator>??

</s:iterator>

热点排行