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:
Download
code

|