Velocity遍历List和Map

有member对象,属性有email,firstname,lastname



package ch7.example4;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.opensymphony.xwork.ActionSupport;

public class TestVelocity extends ActionSupport ...{
   List members=new ArrayList();
   Map membersMap=new HashMap();
   public TestVelocity()...{
       Member m1=new Member();
       m1.setEmail("[email protected]");
       m1.setFirstname("gao1");
       m1.setLastname("xiang1");
      
       Member m2=new Member();
       m2.setEmail("[email protected]");
       m2.setFirstname("gao2");
       m2.setLastname("xiang2");
      
       Member m3=new Member();
       m3.setEmail("[email protected]");
       m3.setFirstname("gao3");
       m3.setLastname("xiang3");
       
        members.add(m1);
        members.add(m2);
        members.add(m3);
       
       
        membersMap.put(1, m1);
        membersMap.put(2, m2);
        membersMap.put(3, m3);
   }

public String execute() throws Exception ...{

    return SUCCESS;
}

public List getMembers() ...{
    return members;
}

public void setMembers(List members) ...{
    this.members = members;
}

public Map getMembersMap() ...{
    return membersMap;
}

public void setMembersMap(Map membersMap) ...{
    this.membersMap = membersMap;
}

}





<html>
  <body>
     List:
     #foreach($member in $members)
       <li>$member.email - $member.firstname $member.lastname</li>
     #end 
    
     <br>
     Map:
     #foreach($member in $membersMap.entrySet())
       <li>$member.key - $member.value.firstname $member.value.lastname</li>
     #end
  </body>
</html>


使用$velocityCount可以对遍历进行计数

结果:

List:

[email protected] - gao1 xiang1
[email protected] - gao2 xiang2
[email protected] - gao3 xiang3
Map:
1 - gao1 xiang1
2 - gao2 xiang2
3 - gao3 xiang3

你可能感兴趣的:(java,velocity)