博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
velocity总结
阅读量:6538 次
发布时间:2019-06-24

本文共 2136 字,大约阅读时间需要 7 分钟。

hot3.png

Velocity判断空值方法:

依据:
$username与$!username的区别,当找不到username的时候,$username返回字符串"$username",而$!username返回空字符串"" 
所以:#set($!username=='') 可以判断字符串是否为空

 

 以下为Velocity脚本摘要

1、声明:#set ($var=XXX)

左边可以是以下的内容
Variable reference 
String literal 
Property reference 
Method reference 
Number literal #set ($i=1) 
ArrayList #set ($arr=["yt1","t2"])
技持算术运算符

2、注释:

单行## XXX
多行#* xxx
xxxx
xxxxxxxxxxxx*#

References 引用的类型

3、变量 Variables 
以 "$" 开头,第一个字符必须为字母。character followed by a VTL Identifier. (a .. z 
or A .. Z).
变量可以包含的字符有以下内容:
alphabetic (a .. z, A .. Z) 
numeric (0 .. 9) 
hyphen ("-") 
underscore ("_")

4、Properties 

$Identifier.Identifier
$user.name
hashtable user中的的name值.类似:user.get("name")

5、Methods 

object user.getName() = $user.getName()

6、Formal Reference Notation 

用{}把变量名跟字符串分开

#set ($user="csy"}
${user}name 
返回csyname

$username

$!username
$与$!的区别
当找不到username的时候,$username返回字符串"$username",而$!username返回空字符串""

7、双引号 与 引号 

#set ($var="helo")
test"$var" 返回testhello
test'$var' 返回test'$var'
可以通过设置 stringliterals.interpolate=false改变默认处理方式

8、条件语句

#if( $foo ) 
<strong>Velocity!</strong>
#end
#if($foo)
#elseif()
#else
#end
当$foo为null或为Boolean对象的false值执行.

9、逻辑运算符:== && || !

10、循环语句#foreach($var in $arrays ) // 集合包含下面三种Vector, a Hashtable or an Array

#end
#foreach( $product in $allProducts )
<li>$product</li>
#end

#foreach( $key in $allProducts.keySet() )

<li>Key: $key -> Value: $allProducts.get($key)</li>
#end

#foreach( $customer in $customerList )

<tr><td>$velocityCount</td><td>$customer.Name</td></tr>
#end
11、velocityCount变量在配置文件中定义
# Default name of the loop counter
# variable reference.
directive.foreach.counter.name = velocityCount
# Default starting value of the loop
# counter variable reference.
directive.foreach.counter.initial.value = 1

12、包含文件 

#include( "one.gif","two.txt","three.htm" )
13、Parse导入脚本
#parse("me.vm" )

14、#stop 停止执行并返回

15、定义宏Velocimacros ,相当于函数 支持包含功能

#macro( d )
<tr><td></td></tr>
#end
调用 
#d()

16、带参数的宏

#macro( tablerows $color $somelist )
#foreach( $something in $somelist )
<tr><td bgcolor=$color>$something</td></tr>
#end
#end
17、Range Operator 
#foreach( $foo in [1..5] )

转载于:https://my.oschina.net/meSpace/blog/91119

你可能感兴趣的文章
php.ini配置文件详解
查看>>
linux sort命令参数及用法详解---linux将文本文件内容加以排序命令
查看>>
win7+ubuntu虚拟机之安装vmware tools步骤
查看>>
利用shell和iptables实现自动拒绝恶意试探连接SSH服务
查看>>
访问控制
查看>>
linux下oracle静默安装---亲测可以安装
查看>>
2016年4月8日作业
查看>>
SSL *** 安全解决方案
查看>>
linux进程的管理
查看>>
C++关键字(static-register-atuo-extern-volatile-const)
查看>>
jmeter-参数化与断言实战
查看>>
ios培训 教你清理ios项目不用的图片
查看>>
瞻博网络收购AppFormix“升级”的产品,听说财富500强企业都在用
查看>>
PHP 处理接口保证数据安全性
查看>>
如何使用Linux命令生成随机密码?
查看>>
Python语言能做什么?
查看>>
决心书
查看>>
Oracle定时执行计划任务
查看>>
SPI Flash的操作
查看>>
机械硬盘显示无法访问由于IO设备错误的资料找回方法
查看>>