Velocity模版引擎语言 1、VTL 语句以 # 开头,变量以 $ 开头,引号可以使单引号(具体String值),也可以是双引号(包含Velocity引用)。 2、 几种最基本的引用方式:变量、属性 A 、变量:$user B 、给变量赋值: #set($test="test") This is a $test velocity page 规范写法 This is a ${test} velocity page 会输出:This is a test velocity page C 、变量正式引用符号$user.username $user.setUsername("hehe") 相当于 $user.getUsername() ; D 、 在引用未定义的变量时,会直接显示$test 一般在使用中会 $!test ,如果没有值,在页面会以空来取代$test E 、特殊转义字符 / #set($name="tom") $name tom /$name $name [url=file://$name/]//$name[/url] /tom [url=file://$name/]///$name[/url] $name F 、表达式 算术表达式 #set( $ foo = 1 ) #set($bar=2) #set( $value = $foo + 1 ) ## Addition #set( $value = $bar - 1 ) ## Subtraction #set( $value = $foo * $bar ) ## Multiplication #set( $value = $foo / $bar ) ## Division #set( $value = $foo % $bar ) ## Remainder 关系和逻辑操作: ==表示相等;=表示赋值 &&表示与;||表示或;!表示非 G 、字符串处理 字符串的串联,双引号中的引用会替换成相应的值 #set( $size = "Big" ) #set( $name = "Ben" ) #set($clock = "${size}Tall$name" ) The clock is $clock. H 、语句 #if #elseif #else #end #foreach #end #if($is) Velocity #else Jsp #end #foreach($index in[1,2,3,4,,5,6,7]) $index #end J 、注释 以##作为标识来定以一个注释,像java中的//符号 多行注释(包括在#*和*#之间)好像java中的/* */注释符号 K 、引入 #include("test.vm") #parse("test.vm") L 、模版引擎初始化参数设置 Velocity.properties Directive.foreach.counter.name=velocityCount Directive.foreach.counter.initial.value=1 input.encoding = GBK output.encoding = GBK 在应用程序中可直接这样设置: Template template = engine.getTemplate("news.vm","GBK"); Q 、宏的定义与使用 定义 ## define a macro.the name of the macro is myMacro #macro(myMacro) this is the first line of my Macro this is the second line of my Macro #end 使用宏 ## use my defining macro:myMacro myMacro content is : #myMacro() |
velocity学习笔记
最新推荐文章于 2022-04-27 16:19:00 发布