刚才在前一篇博文中说了freemarker整合springmvc,相信大家也看见了,helloFtl.ftl 我在浏览器上访问成功了,那么就说明了X.ftl可以在浏览器上访问,为什么可以访问,其实原理大概和jsp差不多,也是通过前一篇的博文中ftl-servlet.xml中的配置,那么现在我在ftl里面加入freemarker的list 或者 macro 看看是否可以访问成功,答案显而易见,是可以的。代码和运行结果如下:
项目webapp部分截图:
03.ftl
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<#list emps as emp>
<#--循环变量仅仅只是在循环中有效,出了循环马上失效,不会影响模板变量-->
${emp.name}
</#list>
</body>
</html>
HelloController.java(前一篇博文中有)
@RequestMapping("/helloTestFtl")
public String helloTestFtl(Model model) {
List<Employeer> emps = Arrays.asList(new Employeer(1, "小李", 22),
new Employeer(2, "八戒", 444),new Employeer(3, "刘德华", 54));
model.addAttribute("emps", emps);
return "03";
}
运行结果:
好了,最后疑问全部解决了,可能以上证明有些人觉得没有意义,但博主在这里写出来的目的,是为了后面,关于用freemarker写一套类似它的标签库或者对一些Xcms(内容管理系统)类型的系统,写一些模板文件有用。所以在这里说清楚。