1. 程式人生 > >Velocity語法介紹

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*#

References 引用的型別
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、包含檔案 
#include( "one.gif","two.txt","three.htm" )

13、Parse匯入指令碼
#parse("me.vm" )

14、#stop 停止執行並返回 

15、定義巨集Velocimacros ,相當於函式 支援包含功能

#macro( d )
<tr><td></td></tr>
#end
呼叫 
#d()

16、帶引數的巨集
#macro( tablerows $color $somelist )
#foreach( $something in $somelist )
<tr><td bgcolor=$color>$something</td></tr>
#end
#end

17、Range Operator 
#foreach( $foo in [1..5] )

相關推薦

Velocity語法介紹

1、宣告:#set ($var=XXX) 左邊可以是以下的內容 Variable reference  String literal  Property reference  Method reference  Number literal #set ($i=1)  ArrayList #set ($arr=

SpringMVC 整合velocity以及介紹velocity的基本使用語法

Velocity模板(VM)語言介紹以及與MVC整合 Velocity是一個基於java的模板引擎(template engine)。它允許任何人僅僅簡單的使用模板語言(template language)來引用由java程式碼定義的物件。 當Velocity應用於web開

Velocity語法命令介紹

什麼是velocity Velocity是一個基於Java的模板引擎(template engine)。它允許任何人僅僅簡單的使用模板語言(template language)來引用由java程式碼定義的物件。 變數定義 #set($maxValue=5) #set($name="Bob") #set

JDK環境變量與Java簡單語法介紹

jdk環境變量 java Dos界面輸入路徑參數: 如果沒有配置JDK環境變量的話,常用的編譯方式就是把javac.exe程序所在的路徑復制粘貼到cmd中,然後加上java文件的所在路徑進行編譯:含義:找到javac.exe程序,然後告訴需要編譯的路徑(參數) 註意:兩者之間要敲一個空格。PAT

velocity語法全解---常用語法

character bject info www 對象 hab str elseif img Velocity基本常用語法 Velocity是一個基於java的模板引擎(template engine),它允許任何人僅僅簡單的使用模板語言(template languag

SQL語法介紹

geo ble pro reference des ctr org table calc 一、Select 查詢 語法: mysql> help selectName: ‘SELECT‘Description:Syntax:SELECT [ALL | DISTI

C#基礎語法介紹

輸出 內容 body pan 輸出結果 c# join() args span 常用語法: 1、顯示數組內容 現在有個字符串型的數組 args,想要在log中輸出結果,那麽做法是用string.join() string[] args; string.Join(",",

php 5.3新增的閉包語法介紹function() use() {}

vars .net details article body 初始 bar amp bin [php] view plain copy <?php /** * author: selfimpr * mail: [email protected]

課後筆記一:Python基礎語法介紹(1)

Python3.6.5我們總是找借口說還有時間去做某事,或者完成某事,結果總是不了了之。比如拖到現在才寫第一課聽課筆記。 第一節課,老師對以下內容做了分享,大致分為 環境配置 開發平臺:Mac OS Version 10.13.2 老師講課的是在Windows 10 我選擇在Mac OS進行Pyth

Python基礎語法介紹:面向對象編程

Python 面向對象 面向對象編程 面向對象編程,簡稱OOP:是一種解決軟件服用的設計和編程方法。這種方法把軟件系統中相似的邏輯操作、數據、狀態等以類的形式描述出來,通過對象實例在軟件系統中復用,從而提高軟件開發效率。 類和對象 類:一個事物的抽象,定義了一類事物的屬性和行為。類具有繼承,多態的特性

Python基礎語法介紹 - 面向對象(下)和異常處理

Python3.6.5 面向對象 概述: 上一節主要介紹了面向對象的一些基本概念:類,類的組成元素“方法和屬性”,類的特性“繼承,多態和封裝”。這一節課分為兩部分:(一)類方法及調用,靜態方法及調用,單例類(二)異常處理 第一部分:類方法、靜態方法和單例類 類方法及調用 (1)使用@classmet

Nginx (五)——Rewrite 語法介紹

編譯 超過 .com 多條件 dsa 訪問日誌 cond 例子 新的 一、rewrite模塊介紹(Nginx_http_rewrite_module) nginx通過ngx_http_rewriet_module模塊支持url重寫、支持if條件判斷,但不支持else。

詳解js正則表達式語法介紹

技術 invalid 我想 不同 小結 小括號 字符 rip 空字符串 1. 正則表達式規則 1.1 普通字符 字母、數字、漢字、下劃線、以及後邊章節中沒有特殊定義的標點符號,都是"普通字符"。表達式中的普通字符,在匹配一個字符串的時候,匹配與之相同的一個字符。

spring AOP——名詞,語法介紹(一)

    需要注意的是:springAOP 被增強的類必須是 IOC容器的bean     AOP 名詞介紹 切面(Aspect):一個關注點的模組化,這個關注點可能會橫切多個物件。事務管理是J2EE應用中一個關於橫切關注點的很好的例子。在Spring AOP中,切面可以使用

Golang import 匯入包語法介紹

package 的匯入語法 寫 Go 程式碼的時經常用到 import 這個命令用來匯入包,參考如下: import(     "fmt" ) 然後在程式碼裡面可以通過如下的方式呼叫: fmt.Println( "我愛北京天安門" ) fmt 是 Go 的標準庫,

大資料之scala(一) --- 安裝scala,簡單語法介紹,條件表示式,輸入和輸出,迴圈,函式,過程,lazy ,異常,陣列

一、安裝和執行Scala解釋程式 --------------------------------------------- 1.下載scala-2.11.7.msi 2.管理員執行--安裝 3.進入scala/bin,找到scala.bat,管理員執行,進入scala命

SpringBoot系列: Pebble模板引擎語法介紹

本文基於Pebble官方文件, 對pebble的語法做一些介紹.  ===============================Pebble 官方資料===============================主頁: https://pebbletemplates.io/github wiki

JSON語法介紹

  官網:https://www.json.org/     JSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for

scss語法介紹

scss語法介紹 這裡既然是對語法的介紹,那麼至於如何安裝和編譯scss我就不多少了,主要是因為本人在群裡認識的小夥伴有的不會用scss,所以就藉著放假的機會來對scss語法做個總結,博主在開發過程中用scss蠻多,所以對scss語法還是熟知的。 1.自定義變數 $color:pin

Markdown語言和語法介紹

轉自 http://blog.csdn.net/zhaokaiqiang1992/article/details/41349819     1.來龍去脈和語法特點     Markdown 是一種輕量級標記語言,創始人為約翰·格魯伯(John Gruber