Appearance
FreeMarker 概述
FreeMarker 是一个基于 Java 的模板引擎,最初专注于使用 MVC 软件架构进行动态网页生成。使用 Freemarker 的主要优点是表示层和业务层的完全分离。程序员可以处理应用程序代码,而设计人员可以处理 html 页面设计。最后使用 freemarker 可以将这些结合起来,给出最终的输出页面。
Spring Boot 整合 FreeMarker 示例
加入依赖
xml
<!-- FreeMarker启动器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>编写处理器
java
@Controller
public class UserController {
/* 查询 */
@GetMapping("/user")
public String user(Model model){
/* 添加响应数据 */
model.addAttribute("tip", "用户数据");
/* 返回视图 */
return "user";
}
}编写模板
在src\main\resources\templates路径下创建user.ftl模板,内容如下。最后运行启动类测试效果
html
<!DOCTYPE html>
<html>
<head>
<title>Spring Boot</title>
<meta charset="UTF-8"/>
</head>
<body>
${tip}
</body>
</html>属性配置
参考spring-boot-autoconfigure-1.5.6.RELEASE.jar中freemarker包中属性文件类FreeMarkerProperties
properties
# 配置FreeMarker
# 配置模版文件加载的基础路径,多个路径中间用逗号分隔
spring.freemarker.templateLoaderPath=classpath:/templates/,classpath:/template/
# 配置模版文件的后缀名
spring.freemarker.suffix=.ftl
# 配置模版文件的编码
spring.freemarker.charset=utf-8
# 配置模版文件使用缓存
spring.freemarker.cache=true注意:也可以直接注入FreeMarkerConfigurer操作FreeMarker。