日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

velocity语法

發布時間:2023/11/24 综合教程 26 生活家
生活随笔 收集整理的這篇文章主要介紹了 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*#

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、定義宏Velocimacros ,相當于函數 支持包含功能 #macro( d ) <tr><td></td></tr> #end 調用 #d()

13、帶參數的宏 #macro( tablerows $color $somelist ) #foreach( $something in $somelist ) <tr><td bgcolor=$color>$something</td></tr> #end #end 調用 # tablerows (“red” “…”)

項目開發中需要注意到的要點: 1. vm中顯示變量,一律加!和{},如:$!{userName}、$!{userVO.name}、$!{userVO.getName()}、$!{userMap.get(“Bob”)} 2. 合并字符串 如果變量是字符串或數值型,如 #set($user = “Tester”),則應為 “welecom$!{user}”,而不是 “welcome” + $user 3. #if($var)條件判斷,當且僅當:$var存在(如果$var是Boolean/boolean型,還必須$var的值為Boolean.true/true)時,條件才成立 4. #foreach()循環的時候,有個系統變量$velocityCount可直接使用,不必自己設定額外的計數器 5. 比較字符串相等,#if($var == “test”)?? #if(“test”.equals($var))均可, 6. vm中生成URL #set($userName = “Bob”) “$offerModule.setTarget('modifySingleOffer.vm').addQueryData(‘userName’, $userName).fork()” “$offerModule.setTarget('modifySingleOffer.vm').addQueryData(‘userName’, ‘Bob’).fork()” 目標大致如:http://127.0.0.1/offer/modifySingleOffer.htm?userName=Bob?7. vm中調用control $control.setTemplate("home:pageNavigator.vm").setParameter("position", "top").setParameter("pageList", $pageList) 8.其它可能會被使用到的,如定義自己的宏(定義和修改宏,需要重新啟動應用服務器才生效)

總結

以上是生活随笔為你收集整理的velocity语法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。