zoukankan      html  css  js  c++  java
  • <s:iterator>各种遍历用法

    1.MapAction.java
    
    import java.util.ArrayList;  
    import java.util.HashMap;  
    import java.util.List;  
    import java.util.Map; 
    
    import com.opensymphony.xwork2.ActionSupport
    import com.model.Student
    public class MapAction extends ActionSupport  
    {  
     
        private Map<String,String> map;  
         
        private Map<String,Student> studentMap;  
          
        private Map<String,String[]> arrayMap;  
          
        private Map<String,List<Student>> listMap;  
          
    
        public String testMap()  
       {  
           map=new HashMap<String,String>();  
            map.put("1", "one");  
            map.put("2", "two");  
              
            studentMap=new HashMap<String,Student>();  
            studentMap.put("student1",new Student(new Long(1),"20034140201","张三1","男",25));  
            studentMap.put("student2",new Student(new Long(2),"20034140202","张三2","女",26));  
            studentMap.put("student3",new Student(new Long(3),"20034140202","张三3","男",27));  
             
            arrayMap=new HashMap<String,String[]>();  
            arrayMap.put("arr1", new String[]{"1","2003401","leejie","male","20"});  
            arrayMap.put("arr2", new String[]{"2","2003402","huanglie","male","25"});  
            arrayMap.put("arr3", new String[]{"3","2003403","lixiaoning","male","21"});  
              
          
            listMap=new HashMap<String,List<Student>>();  
              
            List<Student> list1=new ArrayList<Student>();  
           list1.add(new Student(new Long(1),"20034140201","张三1","男",25));  
            list1.add(new Student(new Long(2),"20034140202","张三2","男",25));  
            list1.add(new Student(new Long(3),"20034140203","张三3","男",25));  
            listMap.put("class1", list1);  
              
            List<Student> list2=new ArrayList<Student>();  
            list2.add(new Student(new Long(1),"20034140301","李四1","男",20));  
            list2.add(new Student(new Long(2),"20034140302","李四2","男",21));  
            list2.add(new Student(new Long(3),"20034140303","李四3","男",22));  
            list2.add(new Student(new Long(4),"20034140304","李四4","男",23));  
            listMap.put("class2", list2);  
              
             
             
              
            return SUCCESS;  
              
        }  
          
        public Map<String, String> getMap() {  
           return map;  
        }  
     
       public void setMap(Map<String, String> map) {  
            this.map = map;  
        }  
          
        public Map<String, Student> getStudentMap() {  
            return studentMap;  
        }  
    
        public void setStudentMap(Map<String, Student> studentMap) {  
            this.studentMap = studentMap;  
        }  
    
        public Map<String, String[]> getArrayMap() {  
           return arrayMap;  
       }  
     
     
        public void setArrayMap(Map<String, String[]> arrayMap) {  
            this.arrayMap = arrayMap;  
        }  
     
     
        public Map<String, List<Student>> getListMap() {  
            return listMap;  
        }  
     
        public void setListMap(Map<String, List<Student>> listMap) {  
            this.listMap = listMap;  
        }  
          
          
    } 
    
    2.testMap.jsp
    <%@ page contentType="text/html;charset=UTF-8" %>  
    <%@ taglib prefix="s" uri="/struts-tags" %>  
    <html>  
    <head>  
    <title>struts2中的map遍历总结</title>  
    </head>  
    <body>  
       <b>1.map中的value为String字符串</b><br>  
       <s:iterator value="map" id="column">  
       <s:property value="#column"/><br>  
       key: <s:property value="key"/><br>  
       value:<s:property value="value"/><br>  
       ******************************************<br>  
      </s:iterator>  
       
       
      <b>2.map中的value为Student对象</b>  
      <table border="1" width="50%"  cellspacing="0" cellpadding="0">  
        <tr>  
          <td>key=value</td>  
          <td>ID</td>  
          <td>num</td>  
          <td>name</td>  
          <td>sex</td>  
          <td>age</td>  
        </tr>  
        <s:iterator value="studentMap" id="column">  
        <tr>  
         <td><s:property value="#column"/></td>  
         <td><s:property value="value.id"/></td>  
         <td><s:property value="value.num"/></td>  
         <td><s:property value="value.name"/></td>  
         <td><s:property value="value.sex"/></td>  
         <td><s:property value="value.age"/></td>  
        </tr>  
        </s:iterator>  
      </table>  
      <p>  
        
        
      <b>3.map中的value为String数组</b>  
      <table border="1" width="50%" cellspacing="0" cellpadding="0">  
        <tr>  
          <td>key=value</td>  
          <td>ID</td>  
          <td>num</td>  
          <td>name</td>  
         <td>sex</td>  
          <td>age</td>  
        </tr>  
        <s:iterator value="arrayMap" id="column">  
        <tr>  
         <td><s:property value="#column"/></td>  
         <td><s:property value="value[0]"/></td>  
         <td><s:property value="value[1]"/></td>  
         <td><s:property value="value[2]"/></td>  
         <td><s:property value="value[3]"/></td>  
         <td><s:property value="value[4]"/></td>  
        </tr>  
        </s:iterator>  
      </table>  
      <p>  
      <b>4.map中的value为list集合</b>  
      <table border="1" width="50%"  cellspacing="0" cellpadding="0">  
        <tr>  
          <td>class</td>  
          <td>ID</td>  
          <td>num</td>  
          <td>name</td>  
          <td>sex</td>  
          <td>age</td>  
        </tr>  
        
       <1.<s:iterator value="listHashMap" id="listid">  
       <s:iterator value="#listid.value" id="listidsub">  
           <tr>  
                <td><s:property value="key"/></td>  
                <td><s:property value="id"/></td>  
               <td><s:property value="num"/></td>  
                <td><s:property value="name"/></td>  
                <td><s:property value="sex"/></td>  
               <td><s:property value="age"/></td>  
            </tr>  
        </s:iterator>  
    </s:iterator> 
    </table>  
        
        
    </body>  
    </html>
    4、普通属性
    public String execute(){
       username = "zhangsan";
       password = "123";
    }
    <s:property value="username"/><br>
       <s:property value="password"/><br>
    
    5、自定义对象
    public String execute(){
      userInfo = new UserInfo();
      userInfo.setUsername("hhh");
      userInfo.setPassword("111");
    }
    <s:property value="userInfo.username"/><br>
       <s:property value="userInfo.password"/><br>
    
    6、List(普通属性)
      public String execute(){
      list = new ArrayList<String>();
      list.add("aaa");
      list.add("bbb");
      list.add("ccc");
    }
    <s:iterator value="list" var="var">
        <s:property value="var"/><br>
       </s:iterator>
       或者:
       <s:iterator value="list">
        <s:property/><br>
       </s:iterator>
      
    6、List(自定义对象属性)
    public String execute(){
      list = new ArrayList<UserInfo>();
      UserInfo userInfo = new UserInfo();
      userInfo.setUsername("u1");
      userInfo.setPassword("p1");
      userInfo.setRoleInfo(new RoleInfo("r1"));
      list.add(userInfo);
      userInfo = new UserInfo();
      userInfo.setUsername("u2");
      userInfo.setPassword("p2");
      userInfo.setRoleInfo(new RoleInfo("r2"));
      list.add(userInfo);
    }
    <s:iterator value="list" var="var">
        <s:property value="#var.username"/>
        <s:property value="#var.password"/>
        <s:property value="#var.roleInfo.rolename"/><br>
    </s:iterator>
    或者:
    <s:iterator value="list">
        <s:property value="username"/>
        <s:property value="password"/>
        <s:property value="roleInfo.rolename"/><br>
    </s:iterator>
    
    7、数组(普通属性)
    public String execute(){
      strs = new String[2];
      strs[0] = "as";
      strs[1] = "asd";
    }
    <s:iterator value="strs">
        <s:property/><br>
       </s:iterator>
    或者:
    <s:iterator value="strs" var="var">
        <s:property value="var"/><br>
       </s:iterator>
      
    8、数组(自定义对象属性)
    public String execute(){
      strs = new UserInfo[2];
      UserInfo userInfo = new UserInfo();
      userInfo.setUsername("u11");
      userInfo.setPassword("11");
      strs[0] = userInfo;
      userInfo = new UserInfo();
      userInfo.setUsername("u22");
      userInfo.setPassword("22");
      strs[1] = userInfo;
    }
    <s:iterator value="strs">
        <s:property value="username"/>
        <s:property value="password"/><br>
       </s:iterator>
    或者:
    <s:iterator value="strs" var="var">
        <s:property value="#var.username"/>
        <s:property value="#var.password"/><br>
    </s:iterator>
    
    8、数组(自定义对象属性)
    public String execute(){
      strs = new UserInfo[2];
      UserInfo userInfo = new UserInfo();
      userInfo.setUsername("u11");
      userInfo.setPassword("11");
      userInfo.setRoleInfo(new RoleInfo("r11"));
      strs[0] = userInfo;
      userInfo = new UserInfo();
      userInfo.setUsername("u22");
      userInfo.setPassword("22");
      userInfo.setRoleInfo(new RoleInfo("r22"));
      strs[1] = userInfo;
    }
    <s:iterator value="strs" var="var">
        <s:property value="#var.username"/>
        <s:property value="#var.password"/>
        <s:property value="#var.roleInfo.rolename"/><br>
    </s:iterator>
    或者:
    <s:iterator value="strs">
        <s:property value="username"/>
        <s:property value="password"/>
        <s:property value="roleInfo.rolename"/><br>
    </s:iterator>
    
    8、Map(普通属性)
    public String execute(){
      map = new HashMap<String,String>();
      map.put("k1", "v1");
      map.put("k2", "v2");
    }
    <s:iterator value="map" var="var">
        <s:property value="#var.key"/>
        <s:property value="#var.value"/><br>
    </s:iterator>
    或者:
    <s:iterator value="map">
        <s:property value="key"/>
        <s:property value="value"/><br>
    </s:iterator>
    
    8、Map(自定义对象属性)
    public String execute(){
      map = new HashMap<String,UserInfo>();
      UserInfo userInfo = new UserInfo();
      userInfo.setUsername("u1");
      userInfo.setPassword("p1");
      userInfo.setRoleInfo(new RoleInfo("r1"));
      map.put("k1", userInfo);
      userInfo = new UserInfo();
      userInfo.setUsername("u2");
      userInfo.setPassword("p2");
      userInfo.setRoleInfo(new RoleInfo("r2"));
      map.put("k2", userInfo);
    }
    <s:iterator value="map" var="var">
        <s:property value="#var.key"/>
        <s:property value="#var.value.username"/>
        <s:property value="#var.value.password"/>
        <s:property value="#var.value.roleInfo.rolename"/><br>
    </s:iterator>
    或者
    <s:iterator value="map">
        <s:property value="key"/>
        <s:property value="value.username"/>
        <s:property value="value.password"/>
        <s:property value="value.roleInfo.rolename"/><br>
    </s:iterator>
    
    8、Map嵌套Map(自定义对象属性)
    public String execute(){
      map = new TreeMap<String,Map<String,UserInfo>>();
      Map<String,UserInfo> innerMap = new TreeMap<String,UserInfo>();
      UserInfo userInfo = new UserInfo();
      userInfo.setUsername("u1");
      userInfo.setPassword("p1");
      userInfo.setRoleInfo(new RoleInfo("r1"));
      userInfo = new UserInfo();
      userInfo.setUsername("u11");
      userInfo.setPassword("p11");
      userInfo.setRoleInfo(new RoleInfo("r11"));
      innerMap.put("k1", userInfo);
      innerMap.put("k11", userInfo);
      map.put("key1", innerMap);
      //////////////////////////
      innerMap = new TreeMap<String,UserInfo>();
      userInfo = new UserInfo();
      userInfo.setUsername("u2");
      userInfo.setPassword("p2");
      userInfo.setRoleInfo(new RoleInfo("r2"));
      userInfo = new UserInfo();
      userInfo.setUsername("u22");
      userInfo.setPassword("p22");
      userInfo.setRoleInfo(new RoleInfo("r22"));
      innerMap.put("k2", userInfo);
      innerMap.put("k22", userInfo);
      map.put("key2", innerMap);
    }
    <s:iterator value="map" var="var">
        <s:iterator value="value">
         <s:property value="#var.key"/>
         <s:property value="key"/>
         <s:property value="value.username"/>
         <s:property value="value.password"/>
         <s:property value="value.roleInfo.rolename"/><br>
        </s:iterator>
    </s:iterator>
  • 相关阅读:
    [LeetCode]2. Add Two Numbers链表相加
    Integration between Dynamics 365 and Dynamics 365 Finance and Operation
    向视图列添加自定义图标和提示信息 -- PowerApps / Dynamics365
    Update the Power Apps portals solution
    Migrate portal configuration
    Use variable to setup related components visible
    Loyalty management on Retail of Dynamic 365
    Modern Fluent UI controls in Power Apps
    Change screen size and orientation of a canvas app in Power App
    Communication Plan for Power Platform
  • 原文地址:https://www.cnblogs.com/101key/p/3368593.html
Copyright © 2011-2022 走看看