velocity第五个应用例子---获得当前迭代的索引



#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<String,String>map = new HashMap<String,String>();


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



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值