亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Freemarker常用指令使用示例

 更新時間:2013年11月19日 11:59:39   作者:  
這篇文章主要介紹了Freemarker常用指令使用示例,步驟簡單,大家參考使用吧

我的開發(fā)環(huán)境
框架:springmvc+freemarker
開發(fā)工具:springsource-tool-suite-2.9.0
JDK版本:1.6.0_29
tomcat版本:apache-tomcat-7.0.26

step1.編寫controller文件,代碼如下:

復(fù)制代碼 代碼如下:

package www.asuan.com.controller;

import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class HelloWorldController {
    @RequestMapping("/helloWorld")
    public String helloWorld(Model model) {
        // 示例一
        int flag = 0;
        model.addAttribute("flag", flag);
        // 示例二
        List<String> noExistList = new ArrayList<String>();
        noExistList = null;
        model.addAttribute("noExistList", noExistList);
        // 示例三
        List<String> strList = new ArrayList<String>();
        strList.add("www.");
        strList.add("cnblogs.");
        strList.add("com/sunang");
        model.addAttribute("strList", strList);
        // 示例四
        Map<String, String> strMap = new HashMap<String, String>();
        strMap.put("mapKey0", "www.");
        strMap.put("mapKey1", "cnblogs.");
        strMap.put("mapKey2", "com/sunang");
        model.addAttribute("strMap", strMap);
        // 示例五
        Date nowTime = new Date();
        model.addAttribute("nowTime", nowTime);//傳輸時間對象
        return "helloWorld.ftl";
    }
}

step2.編寫ftl文件,代碼如下:

復(fù)制代碼 代碼如下:

<html>
<body>
示例一輸出結(jié)果:
<p>
<#-- if指令的用法-->
<#-- 在指令標(biāo)籤內(nèi)直接使用變量名得到文本值-->
<#if flag == 1>
    flag = 1
<#elseif flag ==2>
    flag = 2
<#else>
    <#-- 在指令標(biāo)籤外使用   ${變量名}   的格式來得到文本值-->
    flag!=1 && flag!=2 flag的值為:${flag}
</#if>
</p>
<p>----------------------------------------------------------</p>
示例二輸出結(jié)果:
<p>
<#-- 判斷變量是否存在-->
<#if noExistList??>
    List存在
<#else>
    List不存在
</#if>
</p>
<p>----------------------------------------------------------</p>
示例三輸出結(jié)果:
<p>
<#-- list指令的用法,as可設(shè)置別名-->
<#list strList as sl>
    <#-- 在變量名后加   _index   得到變量在容器中的序號,從0開始-->
    <#if sl_index == 0>
        我的博客地址是:${sl}
    <#else>
        ${sl}
    </#if>
</#list>
</p>
<p><p></p>
直接使用下標(biāo)訪問List:${strList[0]}${strList[1]}${strList[2]}
</p>
<p>----------------------------------------------------------</p>
示例四輸出結(jié)果:
<p>
<#-- 使用    ${變量名.變量名}   獲取容器對象的子對象-->
${strMap.mapKey0}${strMap.mapKey1}${strMap.mapKey2}
</p>
<p>----------------------------------------------------------</p>
示例五輸出結(jié)果:
<p>
<#-- 當(dāng)變量是日期對象時,可使用函數(shù)使其按格式輸出-->
${nowTime?string("yyyy-MM-dd")}
</p>
</body>
</html>

step3.運行與調(diào)試

將工程部署到tomcat并運行,在瀏覽器輸入:http://localhost:8080/你設(shè)置的工程名/helloWorld.htm
運行結(jié)果:

相關(guān)文章

  • Java RateLimiter的限流詳解

    Java RateLimiter的限流詳解

    這篇文章主要為大家詳細介紹了Java RateLimiter的限流,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • Spring Boot無縫集成MongoDB

    Spring Boot無縫集成MongoDB

    這篇文章主要介紹了Spring Boot無縫集成MongoDB的相關(guān)知識,本文涉及到MongoDB的概念和nosql的應(yīng)用場景,需要的朋友可以參考下
    2017-04-04
  • Java 實現(xiàn)網(wǎng)絡(luò)爬蟲框架詳細代碼

    Java 實現(xiàn)網(wǎng)絡(luò)爬蟲框架詳細代碼

    這篇文章主要介紹了Java 實現(xiàn)網(wǎng)絡(luò)爬蟲框架,主要是用于爬取網(wǎng)絡(luò)上一些內(nèi)容,比如超鏈接之類的,需要的朋友可以參考下面文章內(nèi)容
    2021-09-09
  • JAVA演示阿里云圖像識別API,印刷文字識別-營業(yè)執(zhí)照識別

    JAVA演示阿里云圖像識別API,印刷文字識別-營業(yè)執(zhí)照識別

    最近有由于工作需要,開始接觸阿里云的云市場的印刷文字識別API-營業(yè)執(zhí)照識別這里我加上了官網(wǎng)的申請說明,只要你有阿里云賬號就可以用,前500次是免費的,API說明很簡陋,只能做個簡單參考
    2019-05-05
  • java中Struts2文件上傳問題詳解

    java中Struts2文件上傳問題詳解

    文件上傳和文件下載是我們在web應(yīng)用程序中常用的兩個功能,在java中,實現(xiàn)這兩種功能的方式也有很多種,其中struts2就給我們提供了一種算是比較簡單的方式吧,下面我們就一起來看一下,
    2015-07-07
  • Java數(shù)據(jù)結(jié)構(gòu)之線性表

    Java數(shù)據(jù)結(jié)構(gòu)之線性表

    線性表是其組成元素間具有線性關(guān)系的一種數(shù)據(jù)結(jié)構(gòu),對線性表的基本操作主要有,獲取元素,設(shè)置元素值,遍歷,插入,刪除,查找,替換,排序等。而線性表可以采用順序儲存結(jié)構(gòu)和鏈式儲存結(jié)構(gòu),本節(jié)主要講解順序表、單鏈表以及雙鏈表的各種基本操作。
    2017-03-03
  • Java?實現(xiàn)使用Comparable按照我們指定的規(guī)則排序

    Java?實現(xiàn)使用Comparable按照我們指定的規(guī)則排序

    這篇文章主要介紹了Java?如何使用Comparable按照我們指定的規(guī)則排序,通過練習(xí)創(chuàng)建TreeSet集合使用無參構(gòu)造方法,并按照年齡從小到大的順序排序,若年齡相同再按照姓名的字母順序排序展開內(nèi)容,需要的朋友可以參考一下
    2022-04-04
  • Java線程中synchronized和volatile關(guān)鍵字的區(qū)別詳解

    Java線程中synchronized和volatile關(guān)鍵字的區(qū)別詳解

    這篇文章主要介紹了Java線程中synchronized和volatile關(guān)鍵字的區(qū)別詳解,synchronzied既能夠保障可見性,又能保證原子性,而volatile只能保證可見性,無法保證原子性,volatile不需要加鎖,比synchronized更輕量級,不會阻塞線程,需要的朋友可以參考下
    2024-01-01
  • MyBatis動態(tài)SQL如何實現(xiàn)前端指定返回字段

    MyBatis動態(tài)SQL如何實現(xiàn)前端指定返回字段

    這篇文章主要介紹了MyBatis動態(tài)SQL如何實現(xiàn)前端指定返回字段,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • java中字符進行全角半角轉(zhuǎn)換示例代碼

    java中字符進行全角半角轉(zhuǎn)換示例代碼

    全角:指一個字符占用兩個標(biāo)準字符位置,而半角:指一字符占用一個標(biāo)準的字符位置,在日常開發(fā)中經(jīng)常會遇到全角半角轉(zhuǎn)換的要求,下面這篇文章主要給大家介紹了關(guān)于java中字符進行全角半角轉(zhuǎn)換的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下。
    2017-08-08

最新評論