How to use Map in velocity

This Example shows you how to use map in velocity.

How to use Map in velocity

How to use Map in velocity

     

This Example shows you how to use map in velocity. The method used in this example are described below:-  
1:- Initialize velocity run time engine through method  init().
2:- Create object of VelocityContext Class.
3:- Create Template class object, Template  class object is used for controlling template methods and properties.

template.merge(context, writer): Merge method of the Template class is used here for merging  the VelocityContext class object to produce the output.

 

 

 

 

MapClass.java

import java.io.*;
import java.util.*;
import org.apache.velocity.*;
import org.apache.velocity.app.*;

public class MapClass {

  public static void main(String[] args)
  throws Exception {
  VelocityEngine ve = new VelocityEngine();
  ve.init();

  ArrayList list = new ArrayList();
  Map map = new HashMap();

  map.put("rno""1");
  map.put("name""komal");
  map.put("libno"1001);
  list.add(map);

  map = new HashMap();
  map.put("rno""2");
  map.put("name""santosh");
  map.put("libno"1002);
  list.add(map);

  map = new HashMap();
  map.put("rno""3");
  map.put("name""ajay");
  map.put("libno"1003);
  list.add(map);

  VelocityContext context = new VelocityContext();
  context.put("stuList", list);
  Template t = ve.getTemplate("./src/velocity/XMLOutput/xml.vm");
  StringWriter writer = new StringWriter();

  t.merge(context, writer);
  System.out.println(writer.toString());
  }
}

map.vm

Student:

#foreach( $stu in $stuList )
    $stu.rno
  $stu.name
  $stu.libno

#end

Output :

Student:
1
komal
1001

2
Santosh
1002

3
Ajay
1003

Download code