SpringBoot 自動繼承了thymeleaf、freemark、velocity三種模闆技術,因為我項目中需要用來Freemark模闆進行生成Java類是以,就整合了SB+F
1.配置pom檔案,引入Freemarker
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
2.配置模闆屬性(application.properties)
# FREEMARKER (FreeMarkerAutoConfiguration)
spring.freemarker.allow-request-override=false
spring.freemarker.allow-session-override=false
spring.freemarker.cache=false
spring.freemarker.charset=UTF-
spring.freemarker.check-template-location=true
spring.freemarker.content-type=text/html
spring.freemarker.enabled=true
spring.freemarker.expose-request-attributes=false
spring.freemarker.expose-session-attributes=false
spring.freemarker.expose-spring-macro-helpers=true
spring.freemarker.prefer-file-system-access=true
spring.freemarker.suffix=.ftl
spring.freemarker.template-loader-path=classpath:/templates/
spring.freemarker.settings.template_update_delay=
spring.freemarker.settings.default_encoding=UTF-
spring.freemarker.settings.classic_compatible=true
spring.freemarker.order=
3.編寫Controller mapping
@RequestMapping("/hello/{name}")
public String hello(@PathVariable("name") String name, Model model) {
model.addAttribute("name", name);
model.addAttribute("age","25");
model.addAttribute("sex","man");
model.addAttribute("birth",new Date());
return "hello";
}
4.編寫hello.ftl頁面模闆
<!DOCTYPE html>
<html lang="en">
<head>
<title>SpringBoot + Freemarker</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
Hello ${name}${age}${sex}
<p>${birth?string("yyyy-MM-dd HH:mm:ss.sss")}</p>
</body>
</html>
5.啟動Application、通路hello/{name}
Hello zhangyd25man
2016-10-21 10:51:26.026