<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-31  評論-2  文章-0  trackbacks-0

    基本語法

    聲明

    #set ($var=XXX)
    左邊可以是以下的內容:
    • Variable reference
    • String literal
    • Property reference
    • Method reference
    • Number literal #set ($i=1)
    • ArrayList #set ($arr=["yt1","t2"])
    • 算術運算符
    • References 引用的類型

    注釋

    單行:

    ## this is a comment

    多行:

    #* this line
    and this line
    and this line, are comments...*#

    變量 Variables

    以 "$" 開頭,第一個字符必須為字母。character followed by a VTL Identifier. (a .. z or A .. Z).
    變量可以包含的字符有以下內容:
    • alphabetic (a .. z, A .. Z)
    • numeric (0 .. 9)
    • hyphen ("-")
    • underscore ("_")

    Properties

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

    h2、Methods

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

    h2、Formal Reference Notation

    用{}把變量名跟字符串分開。如

    #set ($user="csy"}
    ${user}name

    返回csyname

    $與$!的區別

    當找不到username的時候,$username返回字符串"$username",而$!username返回空字符串""

    雙引號 與 引號

    #set ($var="helo")

    則 test"$var" 返回testhello,test'$var' 返回test'$var'。
    可以通過設置 stringliterals.interpolate=false改變默認處理方式

    條件語句

    #if( $foo )
    <strong>Velocity!</strong>
    #end
    #if($foo)
    #elseif()
    #else
    #end

    當$foo為null或為Boolean對象的false值執行.

    邏輯運算符:

    == && || !

    循環語句

    #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

    velocityCount變量在配置文件中定義

    1. Default name of the loop counter
    2. variable reference.
      directive.foreach.counter.name = velocityCount
    3. Default starting value of the loop
    4. counter variable reference.
      directive.foreach.counter.initial.value = 1

    包含文件

    #include( "one.gif","two.txt","three.htm" )

    Parse導入腳本

    #parse("me.vm" )

    #stop 停止執行并返回

    定義宏

    Velocimacros, 相當于函數支持包含功能:

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

    帶參數的宏

    #macro( tablerows $color $somelist )
    #foreach( $something in $somelist )
    <tr><td bgcolor=$color>$something</td></tr>
    #end
    #end

    Range Operator

    #foreach( $foo in [1..5] )

    與struts2的整合

    模板裝載位置(按順序依次搜索)

    • Web application 應用程序路徑,會覆蓋掉類路徑下的同名配置文件;
    • Class path 類路徑,一般為缺省模板的配置,公共模板位置;

    數據來源(按順序依次搜索)

    • The value stack
    • The action context
    • Built-in variables

    Struts2-Velocity集成的一些隱含變量

    • stack - ValueStack自身。調用方式:${stack.findString('ognl expr')}
    • action - 最新操作的action
    • reponse
    • request
    • session
    • applicaion - 獲得servlet的環境
    • base - 請求環境的路徑

    Velocity Result 輸出模板

    模擬jsp執行環境,使用velocity的模板直接顯示到servelet的輸出流。

    location - 模板位置,沒有其它參數時的缺省配置。
    parse - 默認true ,false將不解析Ognl expressions.

    配置范例:

    <result name="success" type="velocity">
    <param name="location">foo.vm</param>
    </result>

    等價于以下的配置方式:

    <result name="success" type="velocity">
    foo.vm
    </result>

    Velocity語法

    http://blog.csdn.net/alexwan/archive/2007/10/29/1853285.aspx

    Struts 與 Velocity 的集成

    http://www.ibm.com/developerworks/cn/java/j-sr1.html

    posted on 2009-07-02 09:38 xiaoxinchen 閱讀(161) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 久久精品a亚洲国产v高清不卡 | 亚洲精品无码午夜福利中文字幕| 亚洲午夜无码久久久久小说| 日本在线看片免费人成视频1000| 国产亚洲大尺度无码无码专线| 免费精品国产自产拍在线观看| 免费国产在线观看不卡| 羞羞漫画页面免费入口欢迎你| 在线免费观看国产视频| 国产亚洲美女精品久久久久| 内射无码专区久久亚洲| 国产福利电影一区二区三区,免费久久久久久久精 | 日本一区二区三区在线视频观看免费| 国产v片免费播放| 永久免费精品影视网站| 亚洲色无码一区二区三区| 免费福利在线视频| 亚洲日韩中文字幕天堂不卡| 搡女人免费视频大全| 国产成人亚洲精品电影| 亚洲中文字幕无码一区二区三区| 成全高清在线观看免费| 激情内射亚洲一区二区三区| 一个人免费高清在线观看| 麻豆亚洲AV成人无码久久精品 | 久久亚洲美女精品国产精品| 少妇高潮太爽了在线观看免费| 亚洲国产91在线| 亚洲M码 欧洲S码SSS222| 三年在线观看免费观看完整版中文| 亚洲成年人在线观看| 青春禁区视频在线观看直播免费| 疯狂做受xxxx高潮视频免费| 亚洲不卡中文字幕无码| 国产精品爱啪在线线免费观看| 亚洲精品无码成人| 亚洲成av人片天堂网| 在线成人a毛片免费播放| 国产V片在线播放免费无码| 亚洲jjzzjjzz在线观看| 亚洲一区精品伊人久久伊人|