<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    tinguo002

     

    struts2 遍歷Map的N中方法

     

    來源
    http://hi.baidu.com/iduany/item/19f9f622603ba8172a0f1c72
    struts2 遍歷Map的N中方法

    主要針對以下幾種情況的Map:
    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>>();

    下面給出一個示例
    1).ExpressMapAction.java
    package com.expre.struts2.action;

    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";
    }
    }

    2).struts.xml
    <!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "<struts>
    <package name="express" extends="struts-default" namespace="/exp">
    <action name="expressMap" class="com.expre.struts2.action.ExpressMapAction">
    <result name="result">/jsp/strMap.jsp</result>
    </action>
    </package>
    </struts>

    3.web.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.4" xmlns="
    http://java.sun.com/xml/ns/j2ee
    <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
    </filter>
    <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>

    <welcome-file-list>
    <welcome-file>/first.jsp</welcome-file>
    </welcome-file-list>
    </web-app>

    4).strMap.jsp
    <%@ page language="java" pageEncoding="utf-8"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <%@ taglib uri="/struts-tags" prefix="s"%>
    <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>

    5).通過url:http://localhost:8080/struts2Jsp/exp/expressMap.action訪問就會看到輸出!

    別的不多說,strMap.jsp已經把使用方法都寫出來了!



    歡迎大家訪問我的個人網站 萌萌的IT人

    posted on 2012-07-26 17:51 一堣而安 閱讀(6248) 評論(0)  編輯  收藏 所屬分類: struts2


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     

    導航

    統計

    常用鏈接

    留言簿(1)

    隨筆分類

    隨筆檔案

    收藏夾

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 怡红院免费的全部视频| 四虎永久免费地址在线网站| 国产亚洲精品影视在线产品| 亚洲av成本人无码网站| 日韩免费观看视频| 亚洲综合精品网站| 亚洲免费视频一区二区三区| 国产zzjjzzjj视频全免费| 免费人成视频在线播放| 中文字幕亚洲电影| 亚洲国产成人手机在线电影bd| 成人a毛片视频免费看| 最新国产AV无码专区亚洲| 99在线视频免费观看| 亚洲网站在线观看| 国产成人免费在线| 亚洲中文字幕日产乱码高清app| 国产精品亚洲精品| 日韩在线免费电影| h视频在线观看免费| 亚洲国产天堂久久综合网站| 69式互添免费视频| 色偷偷噜噜噜亚洲男人| 久久午夜夜伦鲁鲁片免费无码影视| 亚洲av高清在线观看一区二区| 亚洲国产成人精品无码区在线秒播 | 美女视频黄的全免费视频网站| 国产亚洲人成A在线V网站 | 久久亚洲国产欧洲精品一| 久久w5ww成w人免费| 亚洲欧洲国产综合AV无码久久| 18国产精品白浆在线观看免费 | 麻花传媒剧在线mv免费观看| 亚洲欧洲自拍拍偷午夜色无码| 色窝窝亚洲av网| 亚洲乱码国产乱码精品精| 性短视频在线观看免费不卡流畅| 亚洲国产综合精品中文第一区| 你懂的网址免费国产| 亚洲中文字幕一二三四区| 91香蕉国产线在线观看免费|