1、注释
- 单行注释:
- ## This is a single line comment.
- 多行注释:
- #*
- Thus begins a multi-line comment. Online visitors won't
- see this text because the Velocity Templating Engine will
- ignore it.
- *#
- 文档格式:
- #**
- This is a VTL comment block and
- may be used to store such information
- as the document author and versioning
- information:
- @version 5
- @author
- *#
2、变量
$customer.Address
$customer.Address有两种含义。它可以表示:查找hashtable对象customer中以Address为关键字的值;也可以表示调用customer对象的getAddress()方法。当你的页面被请求时,Velocity将确定以上两种方式选用那种,然后返回适当的值。
变量定义:变量定义为#set开头的语句
- #set( $iAmVariable = "good!" )
- Welcome $name to Javayou.com!
- today is $date.
- $iAmVariable
重新执行上面的运行命令,结果:
Welcome Liang to Javayou.com!
today is Tue Dec 14 22:44:39 CST 2004.
good!
可以看得模版中的变量定义为# set开头的语句,不是很难理解,执行后模版中的变量$iAmVariable都转换成定义的值:
good!
3、判断语句
判断语句只是简单的#if ()、#else、#end
4、迭代
- #foreach( $product in $list )
- $product
- #end
执行运行命令,结果:
# 1
# 2
5、宏literal
在Velocity的官方文档中并没有提及这个指令,通过搜索引擎找到,其实就这个指令就是原样输出#literal()中包含的文本,代码如下:
#literal()
$username
#end
那么输出的结果就是 $username,不会调用velocity的模板引擎进行解析。
velocity.properties对应配置:
runtime.interpolate.string.literals = true
6、reference的三种方式:变量、属性、方法
reference的正是格式如下:
${mudSlinger} 变量
${customer.Address} 属性
${purchase.getTotal()} 方法
本文转自 tianya23 51CTO博客,原文链接:http://blog.51cto.com/tianya23/683822,如需转载请自行联系原作者