This Domain(Admin5.com) is for Sale:

Velocity用户手册---中文版

时间:2007-10-22  来源:不详  作者:林子

#set ( $foo = “bar” )

$foo

#set ( $blargh = ‘$foo’ )

结果:

bar

$foo

上面这个特性可以通过修改velocity.properties文件的stringliterals.interpolate = false的值来改变上面的特性是否有效。

条件语句

if/elseif/else

当一个web页面被生成时使用Velocity的#if directrive,如果条件成立的话可以在页面内嵌入文字。例如:

#if ( $foo )

<strong>Velocity!</strong>

#end

上例中的条件语句将在以下两种条件下成立:

l$foo是一个boolean型的变量,且它的值为true

l$foo变量的值不为null

这里需要注意一点:Velocity context仅仅能够包含对象,所以当我们说“boolean”时实际上代表的时一个Boolean对象。即便某个方法返回的是一个boolean值,Velocity也会利用内省机制将它转换为一个Boolean的相同值。

如果条件成立,那么#if和#end之间的内容将被显示。

#elseif和#else元素可以同#if一同使用。例如:

#if( $foo < 10 )

<strong> Go North </strong>

#elseif( $foo == 10 )

<strong> Go East </strong>

#elseif( $foo == 6 )

<strong> Go South </strong>

#else

<strong> Go West </strong>

#end

注意这里的Velocity的数字是作为Integer来比较的——其他类型的对象将使得条件为false,但是与java不同它使用“==”来比较两个值,而且velocity要求等号两边的值类型相同。

关系、逻辑运算符

Velocity中使用等号操作符判断两个变量的关系。例如:

#set ( $foo = “deoxyribonucleic acid” )

#set ( $bar = “ribonucleic acid” )

#if ( $foo == $foo )

In this case it’s clear they aren’t equivalent.So…

#else

They are not equivalent and this will be the output.

#end

Velocity有AND、OR和NOT逻辑运算符。下面是一些例子:

## logical AND

#if( $foo && $bar )

<strong> This AND that </strong>

#end

## logical OR

#if ( $foo || $bar )

<strong>This OR That </strong>

看完这篇,您有何感觉呢?

文章评论

共有位Admini5网友发表了评论 查看完整内容

24小时热门信息