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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

velocity参数重新赋值_Velocity(5)——#set指令

發(fā)布時間:2023/12/19 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 velocity参数重新赋值_Velocity(5)——#set指令 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

引用可以讓模板設計者生成動態(tài)內(nèi)容,而指令允許設計者真正的負責頁面的展現(xiàn)和內(nèi)容。

指令是以#開頭,后面緊跟一個關鍵字,比如if,else,foreach等。而這個關鍵字,是可以被放在{}中間的。這是規(guī)范的寫法,但是可能不好看。

#set

#set指令用于向一個變量或者屬性賦值。其格式為 #set($foo="bar")或者#set($foo.bar=$test)。

LHS必須是一個變量或者屬性,RHS必須是以下7種類型之一:變量、屬性、字符串字面值、數(shù)字字面值、方法、ArrayList、Map。比如:

#set( $test = $test2 + 3)

#set( $test.a = "abc")

#set( $test.b = 1)

#set( $test.c = $test.a)

#set( $test.d = $test.calc("1+1"))

#set( $test.e = ["123", "abc", $test.c]) 訪問時使用$test.e.get(0)就可以獲得值"123"

#set( $test.f = {"name":"car", "color":"red"}) 訪問時使用$test.f.get("color")就可以獲得值"red"

默認情況下,RHS是null的話,將不會對LHS進行賦值,LHS會保持原來的值。所以一個引用一旦被創(chuàng)建,一般是無法移除的。但是可以修改Velocity的某個配置,改變這一現(xiàn)象。在#foreach里進行判斷時,要特別注意。

在使用#set時,字符串的字面值如果放在雙引號里,將會被解析。比如#set( $test.a = "abc"), 那么$test.a的值就是abc。而#set( $test.b = "$test.a")等價于#set( $test.b=$test.a )。但是#set( $test.b = '$test.a') 的結(jié)果卻是把$test.a這個字符串字面值賦值給$test.b。

當遇到需要輸出大量的字符串字面值,而不是輸出它們的實際值的情況時,可以使用#literal() ... #end來包圍VTL Code。

總結(jié)

以上是生活随笔為你收集整理的velocity参数重新赋值_Velocity(5)——#set指令的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。