velocity语法,velocity常用语法详解Velocity是一个基于Java的模板引擎,它允许页面设计者引用Java中定义的方法。以下是Velocity语法的详细介绍:基本语法语法元素描述示例#用来标识Velocity的关键字,如#set、#if、#else、#end、#foreach、#include、#parse、#macro等#set($name = "velocity")$用来标识Velocity..
13297143156 立即咨询发布时间:2025-01-04 热度:242
velocity语法,velocity常用语法详解
Velocity是一个基于Java的模板引擎,它允许页面设计者引用Java中定义的方法。以下是Velocity语法的详细介绍:
语法元素 | 描述 | 示例 |
---|---|---|
# | 用来标识Velocity的关键字,如#set 、#if 、#else 、#end 、#foreach 、#include 、#parse 、#macro 等 | #set($name = "velocity") |
$ | 用来标识Velocity的变量 | $name 、$msg |
${} | 用来明确标识Velocity变量,尤其是在变量名后紧跟其他字符时 | ${name}world |
! | 用来强制把不存在的变量显示为空白 | $!username |
定义变量:
#set($name = "velocity")
变量赋值:
#set($hello = "hello $name")
上述代码将给$hello
赋值为"hello velocity"。
#foreach($element in $list) <span>$!element</span><br> #end
Velocity引擎会将$list
中的值循环赋给$element
变量。
#if(condition) ... #elseif(condition) ... #else ... #end
Velocity引擎提供了AND
、OR
和NOT
操作符,分别对应&&
、||
和!
。例如:
#if($foo && $bar) ... #end
Velocity中的宏可以理解为函数定义。定义的语法如下:
#macro(macroName arg1 arg2...) ... #end
调用这个宏的语法是:
#macroName(arg1 arg2...)
单行注释:##
多行注释:#* *#
文档格式注释:#** *#
变量引用:$变量名
或${变量名}
属性引用:$变量名.属性
或${变量名.属性}
方法引用:$变量名.方法([入参1[, 入参2]*]?)
非解析内容也就是不会被引擎解析的内容。语法如下:
#[[ 非解析内容1 非解析内容2 ]]#
Velocity提供了一些内置对象,如$velocityCount
,它自动记录循环次数。
如果引用变量已经被定义,如$boy
已经被定义,且值为"lai",则\$boy
会输出"lai"。如果$boy
未被定义,则会直接输出\$boy
。
#stop
指令表示停止执行模板并返回,可用于程序调试,但不能在#if
和#foreach
中使用。
#include
:把一个文件包含进来,但模板引擎不会对文件里的内容进行解析渲染。一次可以包含多个文件,文件名间使用逗号间隔。
#parse
:一次只能包含一个文件,模版引擎会对parse
进来的文件内容进行velocity
语法上的解析渲染。可以复用#parse
进行递归调用,在递归调用的过程中,于外部声明的变量可以被内部所调用,同时如果内外层出现同名的变量名里,内部变量会覆盖外部变量。
velocity语法,velocity常用语法详解Velocity是一个基于Java的模板引擎,它允许页面设计者引用Java中定义的方法。以下是Velocity语法的详细介绍:基本语法语法元素描述示例#用来标识Velocity的关键字,如#set、#if、#else、#end、#foreach、#include、#parse、#macro等#set($name = "velocity")$用来标识Velocity...