velocity简易入门及有用的链接

资源列表

1.Velocity+Java部署
2.Velocity 模板引擎自动生成代码的例子
3.《Apache Velocity用户指南》官方文档中文
4.Velocity(Java模板引擎)学习笔记
5.The Apache Velocity Project Getting Started
6.本文基于 Velocity 1.7 版本撰写

基本模板语言语法使用

变量定义

#set($name="velocity")

等号后面的字符串Velocity引擎将重新解析,例如出现以$开始的字符串时,将做变量的替换。

#set($hello = "hello $name")

上面这个等式将会给$hello赋值”hello velocity”

变量的使用

例如$name,或${name}(推荐)
对于复杂对象类型的变量
例如$person,可以使用${person.name} 来访问 personname 属性
值得注意的是,这里的${person.name} 并不是直接访问 personname 属性,而是访问 persongetName() 方法,所以${person.name}${person.getName()} 是一样的

变量赋值

对于 Velocity 来说,变量是弱数据类型的,可以在赋了一个 String 给变量之后再赋一个数字或者数组给它。
可以将以下六种数据类型赋给一个 Velocity 变量:变量引用, 字面字符串, 属性引用, 方法引用, 字面数字, 数组列表

#set($foo = $bar)
#set($foo =“hello”)
#set($foo.name = $bar.name)
#set($foo.name = $bar.getName($arg))
#set($foo = 123)
#set($foo = [“foo”,$bar])

循环

在 Velocity 中循环语句的语法结构如下:

#foreach($element in $list)
 This is $element
 $velocityCount
#end

Velocity 引擎会将 list 中的值循环赋给 element 变量,同时会创建一个$velocityCount 的变量作为计数,从 1 开始,每次循环都会加 1.

条件语句

条件语句的语法如下

#if(condition)
...
#elseif(condition)
…
#else
…
#end

关系操作符

Velocity 引擎提供了 AND、OR 和 NOT 操作符,分别对应&&、||和! 例如:

#if($foo && $bar)
#end

Velocity 中的宏可以理解为函数定义。定义的语法如下:

#macro(macroName arg1 arg2 …)
...
#end

调用这个宏的语法是:

#macroName(arg1 arg2 …)

这里的参数之间使用空格隔开,下面是定义和使用 Velocity 宏的例子:

#macro(sayHello $name)
hello $name
#end
#sayHello(“velocity”)

输出的结果为 hello velocity

#parse#include

#parse#include 指令的功能都是在外部引用文件,而两者的区别是,#parse 会将引用的内容当成类似于源码文件,会将内容在引入的地方进行解析,#include 是将引入文件当成资源文件,会将引入内容原封不动地以文本输出。分别看以下例子:

foo.vm 文件:

#set($name =“velocity”)

parse.vm:

#parse(“foo.vm”)

输出结果为:velocity

include.vm 文件:

#include(“foo.vm”)

输出结果为:#set($name =“velocity”)

    var hello = world;
  • [x] @mentions, #refs, links, formatting, and tags supported
  • [x] list syntax required (any unordered or ordered list supported)
  • [x] this is a complete item
  • [ ] this is an incomplete item
  • [x]hello
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值