velocity(vm)模板引擎基本语法_第1页
velocity(vm)模板引擎基本语法_第2页
velocity(vm)模板引擎基本语法_第3页
velocity(vm)模板引擎基本语法_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、velocity(vm)模板引擎基本语法循环m.tooletcotcolicustom-datahrefendoeccciccocoececitvoi可用余额emc$c$!acc.owneraoc元tlmeceemodeccceipportWoreay)#endo表单提交sePayForm)mit嵌套vmse(pefoovmvelocit三种eferece变量:对对象的一种字符串化表示,返回值调用了的toti方法的结果。i条件语句方法:调用的是对象的某个方法,该方法必须是的c返回值也是totin方法的参数也必须为ti的。属性:除了访问的类属性外,等价于et方法。基本符号、来标识velocity

2、脚本语句。、来标识一个对象(或者变量)。、用来标识velocit变量。、“用来强制把不存在的变量显示为空白。、用双引号还是单引号表示,默认“可以在tilitelite改变默认处理方式e基本语法i变量变(量1定)义mehello)temltemeindexvm)ettemltedirectoryRoot/tem1ateNametemplate变量(规2范),也可以写成mee但一般情况下使用me:注:意:当:引:用:属:性:的时候不能加变:(量3赋)值:$name:=hello:左:侧:为:变:量:或:者:属:性:的:引:用:。:右:侧:变量引用、字面字符串、属性引用、方法引用、字面数字、数组列表

3、。TOC o 1-5 h z变量弓moeyilletmo字符串引用iemoicetmoeylme方法引用ioctoyeveeetm数字弓扁meetmoey数组列表otmylt、右值是川则左侧不会被赋值,会保留原来的值。、velocity模板中未被定义的将被认为是一个字符串。etooiomoooo输出结果为mooio、velocit模板中不会解释为对象的实例变量。例如$foo.getBar等同于$foo.Bar;$data.getUser(jon等同于$data.User(jon);data.getRequest().getServerName等同于$data.Request.ServerNam

4、e等同于$(data.Request.ServerName)2、循环#foreach($elementin$list)Thisis$element$velocityCount#end例如:#set($list=pine,oak,maple)#foreach($elementin$list)$velocityCountThisis$element.#end输出结果为:$list可以为Vector、Hashtable、Array。分配给$element的值是一个java对象,并且可以通过变量被引用。例如#foreach($keyin$list.keySet)Key:$key-value:$list

5、.get($key)#endVelocity还提供了循环次数的方法,$velocityCouont变量的名字是Velocity默认的名字,表示循环到第几次了。例如#foreach($fooin1,2,3,4,5)$foo#end#foreach($barin2,1,0,-1,-2)$bar#end#set($arr=0,1)#foreach($iin$arr)$i#end输出结果如下:3、条件语句#if(condition)#elseif(condition)#else#end例如:#set($arr=jiayou,jiayou2,jiayou3)#foreach($elementin$arr

6、)#if($velocityCount=1)jiayou#elseif($velocityCount=2)jiayou2#elsejiayou3#end#end输出结果:4、语句嵌套#foreach($elementin$list)#foreach($elementin$list)thisis$element.$velocityinner#endthisis$element.$velocityout#end5、注释单行注释:#thisissingle多行注释:#*#文档格式:#*#6、关系和逻辑操作符&=|!#if($foo&$bar)ThisANDthat#end7、velocity中的宏V

7、elocity中的宏我们可以理解为函数。宏的定义#macro宏的名称$参数1$参数2)语句体(即函数体)#end宏的调用#宏的名称($参数1$参数2)说明:参数之间用空格隔开。8、#stop停止执行模板引擎并返回,应用于debug很有帮助。9、$include和#卩86#include和#parse的作用都是引入本地文件,为了安全,被进入的文件只能在Template_root目录下。这两个引入区别:#include可以引入多个文件。例如:#include(one.gif,two.txt,three.htm门#parse只能引入指定的单个对象。例如:#parse(layout/index.vm)

8、#include引入的文件内容不会被velocity模板引擎解析。#parse引I入的文件内容,将解析其中的velocity并交给模板,相当于把引入的文件内容copy到文件中。#parse是可以递归调用的。例如:调用者dofoo.vm中代码:countdown.#set($count=8)#parse(parsefoo.vm)alldonewithdiaoyongparsefoo.vm.parsefoo.vm中代码:$count$set($count=$count-1)#if($count0)#parse(parsefoo.vm)#!己调用自己#elsebr递归调用结束#end输出结果:注:使用#parse来嵌套另一个vm页面时,变量共享问题,如:a.vm中嵌套了b.vmvm中使用了变量$param;vm里可直接使用$param.但其中一个定义了,则使用它自己定义的那个同名变量。10、转义字符当变量被定义的时候,两个代表一个,如果未被定义,则按照原样输出。例

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论