SpringBoot-集成Freemarker

FreeMarker 是一款 模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页,电子邮件,配置文件,源代码等)的通用工具。 它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件。

模板编写为FreeMarker Template Language (FTL)。它是简单的,专用的语言, 不是 像PHP那样成熟的编程语言。 那就意味着要准备数据在真实编程语言中来显示,比如数据库查询和业务运算, 之后模板显示已经准备好的数据。在模板中,你可以专注于如何展现数据, 而在模板之外可以专注于要展示什么数据。以上引用至Freemarker在线手册

入门程序

1.创建项目,勾选web和freemarker组件,本实例Github地址02-freemarker

2.创建hello.ftl

3.创建HelloController

4.运行

简单语法(指令)

1.list集合

controller:

hello.ftl

运行:

下面将不再配合案例,直接书写语法及示例:

2.if, else, elseif

 <#if condition>
 ....
 <#elseif condition2>
 ...
 <#elseif condition3>
 ...
 <#else>
 ...
 </#if>

示例:

<#if x ==1>
    doSomething
<#elseif x==2>
    doSomething
<#else>
    doSomething
<!--#if-->

3.switch、case、default、break

<#switch value>
<#case refValue>
...
<#bread>
<#case refValue>
...
<#bread>
<#default>
...
</#switch>

4.include

include指令的作用类似于JSP的包含指令,用于包含指定页,include指令的语法格式如下

<#include filename [options]

在上面的语法格式中,两个参数的解释如下
(1) filename:该参数指定被包含的模板文件
(2) options:该参数可以省略,指定包含时的选项,包含encoding和parse两个选项,encoding指定包含页面时所使用的解码集,而parse指定被包含是否作为FTL文件来解析。如果省略了parse选项值,则该选项值默认是true

5.import指令

该指令用于导入FreeMarker模板中的所有变量,并将该变量放置在指定的Map对象中,import 指令的语法格式如下:

<#import path as mapObject>

在上面的语法格式中,path指定要被导入的模板文件,而mapObject是一个Map对象名,通过这行代码,将导致path模板中的所有变量都被放置

6.setting指令

该指令用于设置FreeMarker的运行环境,该指令的语法格式如下:

<#setting name = value>

name 的取值范围包括如下几个
locale :该选项指定该模板所用的国家/语言选项
number_format:该选项指定格式化输出数字的格式
boolean_format:该选项指定两个布尔值的语法格式,默认值是"true、false"
date_format,time_format,datetime_format:该选项指定格式化输出日期的格式
time_zone: 设置格式化输出日期时所使用的时区

更多常用语法可以查看键鼠持有者的博客

Last modification:February 20th, 2019 at 03:49 pm
If you think my article is useful to you, please feel free to appreciate

Leave a Comment