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[] args) throws 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


