freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

velocity的中文指南-文庫吧

2025-08-01 10:03 本頁面


【正文】 y 將決定這兩種可能到底是哪一個,然后返回相應(yīng)的值。 . 方法 方法在 JAVA代碼中定義,并作一些有用的事情,比如運行一個計算器或者作出一個決定。方法是實際上也是引用,由前導(dǎo)符 $后跟一個 VTL 標識符,后跟一個 VTL 方法體( Method Body)。 VTL 方法體由一個VTL 標識符后跟一 個左括號,再跟可選的參數(shù)列表,最后是右括號。下面是一些有效的方法示例: $() $() $( My Home Page ) $( [Strange, Weird, Excited] ) 前面兩個例子 $() 和 $() – 看起來有點象上面屬性一節(jié)中所用的樣子, $ 和 $.。如果你想這些例子在某些方面相關(guān),那你就對了。 VTL 屬性可以為 VTL方法用作簡略標記。屬性 $ 具有和方法 $() 完全一樣的效果。屬性和方法的主要不同點是方法中可以添加參數(shù)列表。 簡略標記可以用在下面的方法中: () $() $() 我們或許希望方法可以為我們放回屬于太陽系的行 星的名字,喂養(yǎng)我們的蚯蚓,或者從相冊中返回一張照片。下面只有長的那個標記是可以工作的方法: $( [Earth, Mars, Neptune] ) 不能將參數(shù)列表傳遞給 $ $() Velocity 假定我意思是 $() $( Homage to Catalonia ) 不能傳遞一個參數(shù)列表 . 形式引用符 Formal Reference Notation 引用的簡略符號如上所述,但是另外還有一種引用的形式符號,示例如下: ${mudSlinger} ${} ${()} 在大多數(shù)情況下,我們將使用引用的簡略符號,但在一些情況下,也需要擁戴哦形式引用符以便正確處理。 假定你正在紙片上構(gòu)件一個句子,將使用 $vice 作為句子中名詞的詞根。我們的目標是允許人們選擇詞根,然后產(chǎn)生以下兩種結(jié)果之一: Jack is a pyromaniac. 或者 Jack is a kleptomaniac.。 在這種情況下,使用簡略符號是不太充分的。考慮到下面的例子: Jack is a $vicemaniac. 這里有個不確定性, Velocity 假定 $vicemaniac,(而不是 $vice) 是一個你想要使用的標識符。 找不到 $vicemaniac的值,他將返回 $vicemaniac。使用形式符號便可解決這個問題: Jack is a ${vice}maniac 現(xiàn)在 Velocity 知道 $vice(而不是 $vicemaniac) 是一個引用。形式符號常用在飲用咋模板中和文本直接鄰近的地方。 . 安靜引用符 Quiet Reference Notation 當 Velocity 遇到一個位定義的引用時,其通常行為是輸出這個引用的映像。比如,假設(shè)下面的引用出現(xiàn)在模板中的一部分: input type=text name= value=$/ 當表單初次裝入時,變量引用 $ 無值,你寧愿是一個空白域而不是具有值 $。使用安靜引用符可以繞過 Velocity的常 規(guī)行為,在 VTL中不用 $ 而是用 $! 符號。 所以,上面的例子將會看起來像下面的樣子: input type=text name= value=$!/ 現(xiàn)在,當表單初次裝入時, $ 仍然沒有值,但是將輸出空字符串而不是 $。 形式和安靜引用符可以一起使用,如下所示: input type=text name= value=$!{}/ 1. 取得語義 Getting literal VTL 特別的字符,比如 $ 和 , 來做這個工作,因此在模板中使用這些自負的時候必須格外小心。本節(jié)講述 $ 的轉(zhuǎn)義。 . 貨幣 我們寫下句子 I bought a 4 lb. sack of potatoes at the farmer39。s market for only $! ,這并沒有什么問題。但如前所述, VTL標識符總是以大寫或是小寫字母開始,所以 $ 在引用中將不能出錯。 . 轉(zhuǎn)義有效的 VTL 引用 問題將會出現(xiàn),因為 Velocity 將有一 個潛在的沖突。轉(zhuǎn)義特殊字符是處理 VTL模板種特殊字符的最好的辦法,者可以用一個反斜線來進行。 foo $ \foo \$ 如果 Velocity 在 VTL模板中遇到一個 $引用,他將在上下文中查找相應(yīng)的值。這里,輸出將是 foo,因為 $ 是定義了的。如果 $ 未定義,輸出將是 $ 。 假設(shè) $ 是定義了的(比如,具有值 foo),但是你想輸出 $??梢杂袔追N方法來做這個事情,不是最簡單的是使用轉(zhuǎn)義符。 The following line defines $ in this template: set( $ = foo ) $ \$ \\$ \\\$ 將輸出是 foo $ \foo \$ 注意: \ 綁定在 $ 的左邊。從做綁定原則使 \\\$ 被解釋為 \\$。 和上面例子比較下面的例子,這里 $ 未定義。 $ \$ \\$ \\\$ 輸出 $ \$ \\$ \\\$ 注意, Velocity 處理定義和未定義的引用是不同的。下面一個 set 指令將 $foo 設(shè)為值 gibbous.。 set( $foo = gibbous ) $moon = $foo 輸出將是 $moon = gibbous 這里 $moon 作為字面輸出,因為他并沒有定義。而 gibbous 將在 $foo 的位置輸出。 我們也可以轉(zhuǎn)義 VTL 指令,這將在指令一節(jié)祥述。 2. Case Substitution 現(xiàn)在你大致了解了引用,可以在模板中使用它們了。 Velocity 采用了很多 JAVA原理的優(yōu)點,模板設(shè)計人員會發(fā)現(xiàn)非常容易使用。例如: $foo $() is the same as $ $(jon) is the same as $(jon) $().getServerName() is the same as $ is the same as ${} 這個例子顯示了引用的一些其他用法。 Velocity 借鑒了 Java的自省和組件 bean特征,來解決引用名在上下文中作為對象和對象方法的問題??梢栽谀愕哪0宓娜魏蔚胤讲迦胍煤颓笾怠? Velocity, 建模在 Sun Microsystems 定義的 BEAN規(guī)范之上,是大小寫敏感的;開發(fā)者努力捕捉和糾正可能出現(xiàn)的用戶錯誤。當方法 getFoo() 在模板中通過 $, Velocity 首先嘗試 $getfoo。 如果失敗,他會再嘗試 $getFoo。類似地,當一個模板引用到 $, Velocity 將嘗試 $getFoo() 先,然后嘗試 getfoo()。 注意: 模板中 引用示例變量的問題仍然沒有解決。 只有引用等價于 JavaBean的 getter/setter 方法解決了。 (比如 $ 解決了到類 Foo 的 getName() 示例方法的引用,但不能引用 Foo的一個公共實例變量 Name)。 3. 指令 因為指令(使用腳本來有效操控 JAVA代碼的輸出)允許頁面設(shè)計員真正 專注于咱點的外觀和內(nèi)容設(shè)計,引用允許模板設(shè)計員為 Web頁面產(chǎn)生動態(tài)內(nèi)容。 . set set 指令用來為引用設(shè)置相應(yīng)的值。值可以被值派給變量引用或者是屬性引用,而且賦值要在括號里括起來。 set( $primate = monkey ) set( $ = $primate ) 賦值的左邊必須是一個變量應(yīng)用或者是屬性引用。右邊可以是下面的類型之一: 變量引用 字面字符串 屬性引用 方法引用 字面數(shù)字 數(shù)組列表 這些例子演示了上述 的每種類型: set( $monkey = $bill ) variable reference set( $ = monica ) string literal set( $ = $ ) property reference set( $ = $($web) ) method reference set( $ = 123 ) number literal set( $ = [Not, $my, fault] ) ArrayList 注意:最后一個例子中,在方括號 [..] 中定義的項目可以被 ArrayList 類定義的方法訪問。 比如,你可以使用 $(0)訪問上述的第一個元素。 右邊也可以是一個簡單的算術(shù)表達式 : set( $value = $foo + 1 ) set( $value = $bar 1 ) set( $value = $foo * $bar ) set( $value = $foo / $bar ) 如果右邊是一個屬性或方法引用,取值是 NULL,他將不會賦值給左邊。通過這種機制將一個存在的引用從上下文中刪除是不可能的。這對 Velocity的新手可能會混淆。例如: set( $result = $(name) ) The result of the first query is $result set( $result = $(address) ) The result of the second query is $result 如果, $(name) 放回字符串 bill,而 $(address) 返回 null,上述VTL 將解釋為: The result of the first query is bill The result of the second query is bill 這往往會給那些想構(gòu)建 foreach循環(huán)來試圖通過屬性和方法引用來設(shè)置一個引用的 新 手帶來困惑,下面馬上通過 if指令 測試一下。例如: set( $criteria = [name, address] ) foreach( $criterion in $criter
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1