Freemarker的list指令和內建函式

2021-08-14 10:57:12 字數 1868 閱讀 9358

1.list指令

list goodslist=

new arraylist();

mapmap=

new hashmap();

map goods1=

new hashmap();

goods1.put("fruit", "蘋果");

goods1.put("price", 3.2);

map goods2=

new hashmap();

goods2.put("fruit", "香蕉");

goods2.put("price", 6.2);

map goods3=

new hashmap();

goods3.put("fruit", "橘子");

goods3.put("price", 4.6);

goodslist.add(goods1);

goodslist.add(goods2);

goodslist.add(goods3);

//list

map.put("goodslist", goodslist);

---商品**表----

$ 商品名稱:$ **:$

2.內建函式

內建函式語法格式: 變數+?+函式名稱

共$條記錄

text="">

data=text?eval />

開戶行: $ 賬號: $

**中對變數賦值

//日期格式化

map.put("today",new

date());

在模板檔案中加入

當前日期: $

日期格式化: $

**中對變數賦值

map.put("num", 20180108);
修改模板

轉換前累計數:$

轉換後累計數:$

在模板檔案中加入

variable變數存在

variable變數不存在

#if>

$

注意: =和!=可以用於字串,數值和日期來比較是否相等,但=和!=兩邊必須是相同型別的值,否則會產生錯誤,而且freemarker是精確比較,」x」,」x 「,」x」是不等的.其它的執行符可以作用於數字和日期,但不能作用於字串,大部分的時候,使用gt等字母運算子代替》會有更好的效果,因為 freemarker會把》解釋成ftl標籤的結束字元,當然,也可以使用括號來避免這種情況,如:y)>

freemarker的list指令小技術歸納

1 問題 當資料超過3位的時候,freemarker會自動用逗號擷取,例如2,311 解決方法 一種即可 1 加.tostring 如 2 加?c,如 將數字轉換成字串,這都是對計算機來說的,而不是對使用者。3 freemarker配置檔案freemarker.properties加上 number...

freemarker的list指令中隱藏的變數

freemarker的list指令遍歷乙個list集合中的每乙個元素,例如 list userlists as user 其實list指令還隱含了兩個變數,1 item index 該變數將返回元素在集合裡的索引值,從0開始計數 2 item has next 該變數是boolean型,false表...

Freemarker中如何遍歷List

freemarker中如何遍歷list 在freemarker應用中經常會遍歷list獲取需要的資料,並對需要的資料進行排序加工後呈現給使用者。那麼在freemarker中如何遍歷list,並對list中資料進行適當的排序呢?一 freemarker中list指令簡單介紹 要想在freemarker...