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

 
}

 

 


 
     List:
     #foreach($member in $members)
      

  • $member.email - $member.firstname $member.lastname

  •      #end 
        
        

         Map:
         #foreach($member in $membersMap.entrySet())
          
  • $member.key - $member.value.firstname $member.value.lastname

  •      #end
     

     

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

    结果:

    List:

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

    你可能感兴趣的:(经验技巧之Webwork)