Velocity Iterator Tool Example

This Example shows you how to use Iterator in velocity template.

Velocity Iterator Tool Example

Velocity Iterator Tool Example

     

This Example shows you how to use Iterator in velocity  template. 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. Template  class object is used for controlling template methods and properties.

#set($list = ["A", "B", "C", "D"]): This is a statement named 'set', generally begins with # character. Here we have assign the list with character $. 

#foreach($items in $item): This is just same as the for loop statement of java.

 

 

IteratorClass.java

import java.io.*;

import org.apache.velocity.*;
import org.apache.velocity.app.*;
import org.apache.velocity.tools.generic.*;

public class IteratorClass {

  public static void main(String[] argsthrows Exception {
  Velocity.init();

  Template template = Velocity.getTemplate("./src/Iterator.vm");

  VelocityContext context = new VelocityContext();
  context.put("var"new IteratorClass());

  Writer writer = new StringWriter();
  template.merge(context, writer);

  System.out.println(writer);
  }
}

Iterator.vm

#set($list = ["A""B""C""D"])

#set($item = $var.wrap($list))

#foreach($items in $item)
  #if($velocityCount <= 3)
  $item.more()
  #end
#end

Output:
A
B
C

Download code