《深入浅出struts2》--第七章,类型转换-支持与Map一起使用
来源:互联网 发布:情定三生知夏的床戏 编辑:程序博客网 时间:2024/06/17 05:49
struts2 遍历Map的多种方法
主要针对以下几种情况的Map:
import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import com.expre.struts2.bean.Person;import com.expre.struts2.bean.Phone;import com.opensymphony.xwork2.ActionSupport;public class ExpressMapAction extends ActionSupport { private static final long serialVersionUID = -4251480679223607716L; private Map<String, String> strMap = new HashMap<String, String>(); private Map<String, Person> perMap = new HashMap<String, Person>(); private Map<String, String[]> strArryMap = new HashMap<String, String[]>(); private Map<String, List<Person>> perLstMap = new HashMap<String, List<Person>>(); //get&set方法,这里都省略了 @Override public String execute() throws Exception { // 值为字符串 strMap.put("first", "zxx"); strMap.put("second", "lsx"); strMap.put("third", "wxh"); // 值为javabean对象 Person person = new Person("001", "zxx", 22); person.setPhone(new Phone("apple", 18957157189L)); perMap.put("one", person); person = new Person("002", "lsx", 25); person.setPhone(new Phone("HTC", 18957157187L)); perMap.put("two", person); // 数组处理 strArryMap.put("arr1", new String[] { "1", "310000", "hz" }); strArryMap.put("arr2", new String[] { "2", "310001", "xh" }); strArryMap.put("arr3", new String[] { "3", "310002", "sc" }); //list对象处理 List<Person> list=new ArrayList<Person>(); list.add(new Person("001", "zxx", 22)); list.add(new Person("002", "lsx", 25)); perLstMap.put("one", list); list=new ArrayList<Person>(); list.add(new Person("003", "wlx", 26)); list.add(new Person("004", "hzx", 28)); perLstMap.put("two", list); return "result"; }}
<html> <body> <ul> <li>访问Map:<s:property value="strMap"/></li> <li>访问Map中某个元素: <s:property value="strMap.first"/> | <s:property value="strMap['second']"/> | <s:property value="strMap[\'third\']"/> </li> <li>访问Map中所有的key:<s:property value="strMap.keys"/></li> <li>访问Map中所有的value:<s:property value="strMap.values"/></li> <li>访问容器的大小: <s:property value="strMap.size()"/> | <s:property value="strMap.size"/>//这是map特别的地方 </li> <li>迭代循环取值,最简单 <s:iterator value="strMap" id="entry"> <s:property value="#entry"/>{ key: <s:property value="key"/> value:<s:property value="value"/>}| </s:iterator> </li> <li>迭代循环取值 <s:iterator value="strMap.keySet()" id="key"> <s:property value="key"/>或<s:property value="#key"/>: <s:if test="strMap[#key]!=null"> <s:property value="strMap.get(#key)"/> | </s:if> </s:iterator> </li> <li>迭代循环取数组值 <s:iterator value="strMap" id="entry"> <s:property value="#entry"/>{ <s:property value="value[0]"/> <s:property value="value[1]"/> | <s:property value="value[2]"/> } </s:iterator> </li> <li>迭代循环取对象值,最直接: <ul> <s:iterator value="perMap" id="entry"> <li> <s:property value="#entry"/> { ID:<s:property value="value.ID"/> Name:<s:property value="value.name"/> Age:<s:property value="value.age"/> }| </li> </s:iterator> </ul> </li> <li>迭代循环取对象的属性值 <s:iterator value="perMap.keySet()" id="key"> <s:property value="#key"/>: <s:iterator value="perMap.get(#key)"> <s:property value="ID"/> <s:property value="name"/> <s:property value="phone.name"/> </s:iterator>| </s:iterator> </li> <li>稍复杂的迭代 <s:iterator value="perLstMap" id="entry"> <s:set name="total" value="#entry.value.size"/> <s:iterator value="#entry.value" status="s"> <s:if test="#s.first"> <s:property value="#entry.key"/>:共${total}条 </s:if> { <s:property value="ID"/> | <s:property value="name"/> | <s:property value="age"/> }; </s:iterator> </s:iterator> </li> </ul> </body></html>
0 0
- 《深入浅出struts2》--第七章,类型转换-支持与Map一起使用
- 《深入浅出struts2》--第七章,类型转换-支持与Collection一起使用
- 《深入浅出struts2》--第七章,类型转换-支持复杂的对象
- 第七章 类型转换:深入浅出struts2
- 《深入浅出struts2》--第七章,类型转换
- 第七节:Struts2-类型转换
- 【Struts2框架】第七节类型转换-类型转换原理和自定义类型转换器实例
- ~第七章:类型与语句
- 第七章 (类型转换)Type Convertion
- 第七章 (类型转换)Type Convertion
- [转载]struts2 值栈与类型转换
- Struts2开发基本配置与类型转换
- Struts2框架14.类型转换与国际化
- struts2值栈与类型转换
- Struts2框架下自定义转换类型使用
- 第七节 基本数据类型与String类型的转换
- 《深入浅出struts2》--第三章,动作与结果
- 《深入浅出struts2》--第十九章 自定义结果类型&验证码案例
- day10
- UESTC 94 Bracket Sequence(线段树的区间更新)
- Notification自定义界面
- 代码之美-2[转]
- html基础1
- 《深入浅出struts2》--第七章,类型转换-支持与Map一起使用
- PAT (Advanced Level) 1056. Mice and Rice (25) 模拟比赛,用queue辅助
- webapp
- mysql编码设置
- spring中@value注解需要注意
- jQuery判断浏览器是移动端还是电脑端自动跳转
- 安卓自定义View实现图片上传进度显示(仿QQ)
- 黑马程序员---c语言字符串输入总结
- Android中的Service服务绑定