葵花向阳。

要明白,被爱并不是一种奖赏,而是种力量,要用它去发光。

Sara @ 2010-02-09 16:11

Velocity是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象。
Velocity 应用于web开发时,界面设计人员可以和java程序开发人员同步开发一个遵循MVC架构的web站点,也就是说,页面设计人员可以只关注页面的显示效果,而由java程序开发人员关注业务逻辑编码。Velocityjava代码从web页面中分离出来,这样为web站点的长期维护提供了便利,同时也为我们在JSPPHP之外又提供了一种可选的方案。
Velocity
的能力远不止web站点开发这个领域,例如,它可以从模板template)产生SQLPostScriptXML,它也可以被当作一个独立工具来产生源代码和报告,或者作为其他系统的集成组件使用。 Velocity也可以为Turbine web开发架构提供模板服务(template service)。Velocity+Turbine提供一个模板服务的方式允许一个web应用以一个真正的MVC模型进行开发。

  

1.
表达式

²  访问JavaBeans
$someBean
${someBean}

²  Properties
$bean.name
${bean.name}    ## 访问bean.getName()方法或是$bean.get(“name”)方法

²  Properties
#set ($bean.name = “value”)
#set (${bean.name} = “value”)    ## 访问bean.setName(“value”)方法

²  调用方法
$uri.setTarget(“target.vm”)

2.注释

²  行注释
## line comments

²  块注释
#* block
    comments
 *#

²  文档注释
#** document
      comments
 *#

3.循环

²  循环语句:
#foreach ($item in $collection)
    ($velocityCount) item is $item
#end

²  其中velocityCount是一特殊循环变量,用来指出循环的次数(1-based

4.条件判断

²  条件判断
#if ($order.total == 0)
    No charge
#else
    $order.total
#end

5.赋值

²  赋值
#set ($customer = $order.customer)

²  四则运算
#set ($sum = $num1 + $num2)
#set ($sub = $num1 - $num2)
#set ($mul = $num1 * $num2)
#set ($div = $num1 / $num2)
#set ($mod = $num1 % $num2)

6.调试

²  暂停执行
#if ($debug) #stop #end

²  调试表达式
$user  ##
显示user.toString()
$user.class  ##
显示user.getClass()
$user.name ##
显示user.getName().toString()
$user.name.class  ##
显示user.getName().getClass()

7.

²  定义宏
#macro ( errorMessage $field )
    #if ( !$field.valid )
        <div class="formError">* $field.message</div>
    #end
#end

²  使用宏
 <td>#errorMessage ( $group.lastName )</td>

8.判断空

²  判断:$bean不为nullBoolean.TRUE
#if ($bean) … #end

²  判断字符串空:””null
#if ($stringUtil.isEmpty($str)) … #end

²  判断字符串非空:非””null
#if ($stringUtil.isNotEmpty($str)) … #end

 



 
网志分类
· 所有网志 (304) · 照片 (16) · 生活 (167) · 工作 (35) · 学习 (77) · 音乐 (7) · 未分类 (2) ·
站内搜索

订阅 RSS

0057971

歪酷博客