SpringBoot中的Freemarker 模板
Freemarker模板概述:
在使用Freemarker模板之前我们要先知道一些关于Freemarker模板的知识,首先FreeMarker 是一款模板引擎:即一种基于模板和要改变的数据,并用来生成输出文本(HTML 网页,电子邮件,配置文件,源代码等)的通用工具。它不是面向最终用户的,而是一个 Java 类库,是一款程序员可以嵌入他们所开发产品的组件。
其次FreeMarker是免费的,基于Apache许可证2.0版本发布。其模板编写为FreeMarker Template Language (FTL)。属于一种简单的,专用的语言。比如数据库查询和业务运算之后, 模板显示已经准备好的数据。在模板中,你可以专注于如何展现数据,而在模板之外可以专注于要展示什么数据。
总体上,模板和数据模型是 FreeMarker 来生成输出所必须的组成部分:模板 + 数据模型 = 输出,Freemarker 的作用主要是将动态页面转换成伪静态 html 页面,提高搜索引擎的收录。具体框架的介绍和用法可参考 http://freemarker.foofun.cn(官网)。
2、list指令(遍历集合): 作用:当需要列表显示内容时,list指令是必须的。list 指令执行在 list 开始标签和 list 结束标签
语法结构:
注意事项:list是个对象,可以通过打点调用属性
3、include 指令: 作用:用于在模板中插入另外一个 FreeMarker 模板文件
语法:<#include ".../test.ftl">
SpringBoot集成Freemarker模版:
1、创建maven项目
2、引入freemarker模板所需要的依赖文件
3、配置freemarker所需要配置的属性
4、编写controller准备一些测试数据
5、编写ftl模板
6、运行项目,测试结果
freemarker的优势:
1、性能、普通的页面 freemarker 性能较差(虽然只是几毫秒到十几毫秒的差距)。但是在复杂页面上(包含大量判断、日期金额格式化)的页面上,freemarker 的性能比使用 tag 和 el 的 jsp 好
2、内置大量常用功能。比如 html 过滤,日期金额格式化等等,使用非常方便
3、宏定义比 jsp tag 方便
4、支持 jsp 标签
5、可以实现严格的 mvc 分离