文章目录


一、Freemarker

简介:

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

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

官网:

https://freemarker.apache.org/">​https://freemarker.apache.org/​

在线手册:

​模板常用语法​​,可以参考这个中文在线手册,这里不再赘述

http://freemarker.foofun.cn/">​ http://freemarker.foofun.cn/​

二、代码实战:

1、maven 依赖:
        <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>

2、yml 文件配置:
spring:
application:
name: freemarker
freemarker:
# 禁用模板缓存
cache: false
# 编码格式
charset: UTF-8
# freemarker模板后缀 默认是 .ftl
suffix: .html
# 是否为此技术启用MVC视图分辨率。
enabled: true
# Content-Type值
content-type: text/html
# #模板加载路径 按需配置 ,默认路径是 classpath:/templates/
template-loader-path: classpath:/templates/

3、创建Freemarker模板文件

由于在配置中配置了模板后缀为 .html(默认为 .ftl),所以这里创建一个 index.html 文件

文件内容如下:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>index</title>
</head>
<body>
Hello ${content}
</body>
</html>

4、创建测试Controller
/**
* created with IntelliJ IDEA.
* author: fxbin
* date: 2018/10/21
* time: 4:15
* version: 1.0
* description:
*/
@Controller
public class FreemarkerController {

@RequestMapping("/index")
public String index(Model model){
model.addAttribute("content", "Freemarker");
return "index";
}
}

5、启动项目,进行测试

浏览器访问 : http://localhost:8080/index

可以看到 模板中写的 ​​${content}​​ 已经被代码中的 Freemarker 取代了

SpringBoot2.X (二十三):SpringBoot整合 Freemarker 模板引擎_html

​代码地址

— end —

如有问题,请及时沟通,谢谢