Freemarker

1.Freemarker介绍:
FreeMarker 是一个用 Java 语言编写的模板引擎,它基于模板来生成文本输出。FreeMarker与 Web 容 器无关,即在 Web 运行时,它并不知道 Servlet 或 HTTP。它不仅可以用作表现层的实现技术,而且还 可以用于生成 XML,JSP 或 Java 等。
Freemarker_第1张图片

2.Freemarker入门案例:
2.1环境搭建 :创建maven工程并导入Freemarker的maven坐标
在这里插入图片描述

2.2创建模板文件
模板文件中有四种元素:
1、文本,直接输出的部分
2、注释,即<#–…-->格式不会输出
3、插值(Interpolation):即${…}部分, 将使用数据模型中的部分替代输出
4、FTL指令:FreeMarker指令,和HTML标记类似,名字前加#予以 区分不会输出 Freemarker的模板文件后缀可以任意,一般建议为ftl
在D盘创建ftl目录,在ftl目录中创建名称为test.ftl的模板文件,内容如下:
Freemarker_第2张图片

3.生成文件
步骤:
第一步:创建一个 Configuration 对象,直接 new 一个对象。构造方法的参数就是 freemarker的版本 号。
第二步:设置模板文件所在的路径。
第三步:设置模板文件使用的字符集。一般就是 utf-8。
第四步:加载一个模板,创建一个模板对象。
第五步:创建一个模板使用的数据集,可以是 pojo 也可以是 map。一般是 Map。
第六步:创建一个 Writer 对象,一般创建 FileWriter 对象,指定生成的文 件名。
第七步:调用模板对象的 process 方法输出文件。 第八步:关闭流。
Freemarker_第3张图片

4.Freemarker指令:
4.1 assign指令:
(1)assign指令用于在页面上定义一个变量
在这里插入图片描述

(2)定义对象类型

在这里插入图片描述

4.2 include指令:
(1)创建模板文件head.ftl
在这里插入图片描述

(2)修改入门案例中的test.ftl,在test.ftl模板文件中使用include指令引入上面的模板文件
在这里插入图片描述

4.3 if指令:
if指令用于判断
(1) 在模板文件中使用if指令进行判断
Freemarker_第4张图片

(2) 在java代码中为success变量赋值
在这里插入图片描述

在freemarker的判断中,可以使用= 也可以使用==

4.4 list指令
list指令用于遍历
(1)在模板文件使用 list 指令进行遍历
在这里插入图片描述

(2)在java代码中为goodsList赋值
Freemarker_第5张图片

你可能感兴趣的:(java)