velocity學習筆記
變數的定義
#set($name = "hello")
變數引用盡量規範
Java is Hello ${name}
變數賦值
#set($P{monkey.Friend="monica"}) //這是賦值一個string
注意:
1.如果右邊值是null,則左邊不會被賦值,會保留以前的值
2.velocity模板不會將reference解釋為物件的例項變數
例如: $foo.Name 將被解釋為Foo物件的getName()方法,而不是Foo物件的Name例項變數
迴圈
#foreach ($element in $list)
This is $element
$velocityCount //這個表示的數量
#end
條件語句
#if(condition)
#else if(condition)
#else
#end
語句的巢狀
#foreach($element in $list)
## 內部迴圈
#foreach ($element in $list)
$element
#end
## 外部迴圈
$element
#end
註釋
(1) 單行註釋
## 表示單行註釋
(2) 多行註釋
#* 這是多行註釋*#
(3) 文件格式註釋
#** 這是文件註釋
@version 1.1
@author minglangx
*#
關係和邏輯操作符
#if($foo && $bar)
This AND that
#end
Velocity中的巨集
Velocity中的巨集我們可以理解為函式
(1) 巨集的定義
#marcro(巨集的名稱 $引數1 $引數2....)
語句體
#end
(2) 巨集的呼叫
#巨集的名稱($引數1 $引數2...)
說明: 引數之間用空格隔開
#stop
停止執行模板引擎並返回,把它應用於debug除錯
#include與#parse
都是引入本地檔案,為了安全,被引入的本地檔案只能在TEMPLATE_ROOT目錄下。
區別:
(1) #include可以引入多個檔案,可以用逗號分隔。
#include("one.gif","two.txt","three.htm")
在括號內可以是檔名,但是更多的是使用變數
#include($test)
(2) include被引入的檔案的內容將不會通過模板引擎解析
而#parse引入的檔案內容Velocity將解析其中的velocity語法並移交給模板意思就是直接將引入檔案的內容複製到當前檔案中
例如: 當前檔案 dofoo.vm
Count down.
#set ($count=8)
## 這裡引用了一個vm檔案直接追加到當前程式碼中
#parse("parsefoo.vm")
ALL done with dofoo.vm!
那麼在parsefoo.vm模板中,你輸入一下內容
$count
#set ($count = $count -1 )
#if ($count > 0)
#parse("parsefoo.vm")
#else
ALL done with parsefoo.vm!
#end
最後顯示結果:
Count down.
8
7
6
5
4
3
2
1
0
All done with parsefoo.vm!
All done with dofoo.vm!
10. 轉義字元 ''的使用
如果引用被定義, 兩個'\‘只會輸出一個'',如果未被定義,剛按原樣輸出. 例如:
#set($email = "foo" )
$email
\$email
\\$email
\\\$email
輸出:
foo
\$email
\foo
\$email
如果$email 未定義
$email
\$email
\\$email
\\\$email
內建物件
Velocity內建了一些物件,在vm模板裡可以直接呼叫,例如:$request、$response、$session
陣列訪問
如果需要訪問特定的元素需要傳入相應的下標
相關文章
- numpy的學習筆記\pandas學習筆記筆記
- IT學習筆記筆記
- 學習筆記筆記
- 【學習筆記】數學筆記
- 《JAVA學習指南》學習筆記Java筆記
- Elasticsearch學習筆記Elasticsearch筆記
- Scala學習筆記筆記
- MySql學習筆記MySql筆記
- jQuery 學習筆記jQuery筆記
- react學習筆記React筆記
- 學習筆記(4.3)筆記
- 學習筆記(4.4)筆記
- 學習筆記(3.29)筆記
- 學習筆記(4.1)筆記
- AOP學習筆記筆記
- AspectJ學習筆記筆記
- 學習筆記(3.27)筆記
- 學習筆記(4.2)筆記
- golang 學習筆記Golang筆記
- Zookeeper學習筆記筆記
- 學習筆記(3.24)筆記
- 學習筆記(3.25)筆記
- 學習筆記(3.21)筆記
- GitHub學習筆記Github筆記
- jest 學習筆記筆記
- typescript 學習筆記TypeScript筆記
- Echarts學習筆記Echarts筆記
- js學習筆記JS筆記
- shell學習筆記筆記
- Dubbo 學習筆記筆記
- SVN 學習筆記筆記
- 笨笨學習筆記筆記
- vue學習筆記Vue筆記
- wepack學習筆記筆記
- redis學習筆記Redis筆記
- PureMVC學習筆記REMMVC筆記
- gitee 學習筆記Gitee筆記
- 機器學習學習筆記機器學習筆記