简介:SpringBoot2.x整合模板引擎Freemarker
1、Freemarker相关maven依赖
引入freemarker模板引擎的依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
2、Freemarker基础配置
在application.properties文件配置如下
#自定义freemarker配置
#是否开启freemarker缓存,本地为false,生产建议为true
spring.freemarker.cache=false
spring.freemarker.charset=UTF-8
spring.freemarker.allow-request-override=false
spring.freemarker.check-template-location=true
#类型
spring.freemarker.content-type=text/html
spring.freemarker.expose-request-attributes=true
spring.freemarker.expose-session-attributes=true
#文件后缀
spring.freemarker.suffix=.ftl
#路径
spring.freemarker.template-loader-path=classpath:/templates/
3、建立文件夹
1)src/main/resources/templates/fm
2)建立一个index.ftl
测试代码:
package net.xdclass.demo.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import net.xdclass.demo.domain.ServerSettings;
@Controller
@RequestMapping("/freemarker")
public class FreemakerController {
@Autowired
private ServerSettings setting;
@GetMapping("/hello")
public String index(ModelMap model){
System.out.println(123);
System.out.println(setting);
model.addAttribute("setting", setting);
return "fm/index"; //不用加后缀,在配置文件里面已经指定了后缀
}
}
index.ftl文件如下:
内容如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
学习 freemaker整合,index.html页面
<h1>xdclass.net</h1>
<h1> ${setting.name} </h1>
<h1> ${setting.domain} </h1>
</body>
</html>
实体类:
访问测试: