我的开发环境
框架:springmvc+freemarker
开发工具:springsource-tool-suite-2.9.0
JDK版本:1.6.0_29
tomcat版本:apache-tomcat-7.0.26
step1.编写controller文件,代码如下:
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;@Controllerpublic 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文件,代码如下:
<html><<mark style="color:transparent">来源gaodaimacom搞#代%码网</mark>body>示例一输出结果:<p><#-- if指令的用法--><#-- 在指令标籤内直接使用变量名得到文本值--><#if flag == 1> flag = 1<#elseif flag ==2> flag = 2<#else> <#-- 在指令标籤外使用 ${变量名} 的格式来得到文本值--> flag!=1 && flag!=2 flag的值為:${flag}</#if></p><p>----------------------------------------------------------</p>示例二输出结果:<p><#-- 判断变量是否存在--><#if noExistList??> List存在<#else> List不存在</#if></p><p>----------------------------------------------------------</p>示例三输出结果:<p><#-- list指令的用法,as可设置别名--><#list strList as sl> <#-- 在变量名后加 _index 得到变量在容器中的序号,从0开始--> <#if sl_index == 0> 我的博客地址是:${sl} <#else> ${sl} </#if></#list></p><p><p></p>直接使用下标访问List:${strList[0]}${strList[1]}${strList[2]}</p><p>----------------------------------------------------------</p>示例四输出结果:<p><#-- 使用 ${变量名.变量名} 获取容器对象的子对象-->${strMap.mapKey0}${strMap.mapKey1}${strMap.mapKey2}</p><p>----------------------------------------------------------</p>示例五输出结果:<p><#-- 当变量是日期对象时,可使用函数使其按格式输出-->${nowTime?string("yyyy-MM-dd")}</p></body></html>
step3.运行与调试
将工程部署到tomcat并运行,在瀏览器输入:http://localhost:8080/你设置的工程名/helloWorld.htm
更多Freemarker常用指令使用示例相关文章请关注搞代码!