#foreach($key in $map.keySet())
$velocityCount > $key : $map.get($key)
#end
$velocityCount获得当前迭代索引
velocityCount变量名可以通过directive.foreach.counter.name属性修改,
如:directive.foreach.counter.name=index,以后可以通过$index进行访问。
迭代的索引默认从1开始,我们可以通过directive.foreach.inital.value=0进行修改。
控台输出
1> key4 : value4
2> key3 : value3
3> key2 : value2
4> key1 : value1
修改索引变量名
在属性文件增加配置
#修改索引变量名
directive.foreach.counter.name=index
index.vm
#foreach($key in $map.keySet())
$index >>> $key : $map.get($key)
#end
#修改迭代索引的默认值
directive.foreach.counter.initial.value=0
模板
#foreach($key in $map.keySet())
$index >>> $key : $map.get($key)
#end
控台输出
0 >>> key4 : value4
1 >>> key3 : value3
2 >>> key2 : value2
3 >>> key1 : value1
//2 Create aContext object
VelocityContextcontext = new VelocityContext();
//3 Add you dataobjects to this context
Map
map.put("key1","value1");
map.put("key2","value2");
map.put("key3","value3");
map.put("key4","value4");
context.put("map",map);
//4 Choose atemplate
Templatetemplate = Velocity.getTemplate("index.vm");
//5 Merge thetemplate and you data to produce the output
StringWriter sw= new StringWriter();
template.merge(context,sw);
sw.flush();
System.out.println(sw.toString());
模板
#foreach($keyin $map.keySet())
$velocityCount > $key : $map.get($key)
#end
=============
#foreach($keyin $map.keySet())
$index >>> $key :$map.get($key)
#end