Velocity foreach循环标签详解


Java Velocity中foreach循环可以很容易的遍历数组或者集合。

定义

#foreach( $elem in $allElems)
    $elem
#end

$allElems可以是一个Vector,一个HashTable,一个数组。

在Velocity中,有一个变量$velocityCount用作循环计数,初始值是1。这个变量的名字和初始值是在velocity.properties文件里配置的。

例子

//输出小时数
#foreach($hour in [0..23])
  $hour
#end
//foreach双重循环遍历list
#set($list1=[
    {
        "asd": "appColumnManage",
        "dbcol_ext_template_param": [
            {
                "param_key": "location_2",
                "param_title": "位置",
                "param_value": "2"
            },
            {
                "param_key": "columnname_2",
                "param_title": "栏目名称",
                "param_value": "定期理财"
            },
        ]
    }
])
#foreach($foo in $list1)
    #foreach($aoo in $foo.dbcol_ext_template_param)
        $aoo.param_value
    #end
#end
//velocity foreach跳出循环
#foreach($item in $!list)
       #if($velocityCount==3)
           #break     ##这个可以运行!!
           //#continue ##也可以运行
           #stop        ##跳出循环
       #end
#end