Java中Velocity变量详解
Java Velocity中所有的变量都是以 $ 开头,所有的关键字都是以 # 开头。
变量定义
#set($name =“velocity”)
Velocity引擎将会给¥name赋值为“51gjie”
变量赋值
模板中,通过#set指令给变量赋值
#set($a="aaa") ##字符串赋值 #set($monkey.Say=["not", "fault"]) ##ArrayList赋值 #set($monkey,Map={"banana":"good", "beef":"bad"}) ##Map赋值
//各种赋值方法 #set($foo = $bar) //变量引用 #set($foo =“hello”) //字符串 #set($foo.name = $bar.name) //属性引用 #set($foo.name = $bar.getName($arg)) //方法引用 #set($foo = 123) //数字 #set($foo = [“foo”,$bar]) //数组列表
例子
#set($root = "www") #set($name = "51gjie.com") #set($template = "$root.$name") $template
执行输出:
www.51gjie.com
总结
1. 在模板文件中使用$name 或者${name} 来使用定义的变量。推荐使用${name} 这种格式,因为在模板中同时可能定义了类似$name 和$names 的两个变量,如果不选用大括号的话,引擎就没有办法正确识别$names 这个变量。
2. 对于一个复杂对象类型的变量,例如$person,可以使用${person.name} 来访问 person 的 name 属性。值得注意的是,这里的${person.name} 并不是直接访问 person 的 name 属性,而是访问 person 的 getName() 方法,所以${person.name} 和${person.getName()} 是一样的。
版权声明:本文为JAVASCHOOL原创文章,未经本站允许不得转载。