freemarker是一個頁面模板引擎。用springboot整合freemarker的方式如以下步驟:
1.在創建springboot的項目的時候,選擇freemarker的組件,或者自己手動在maven中添加庫依賴:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
2.在application.aproperties中添加相應的配置:
spring.freemarker.charset=UTF-8 spring.freemarker.content-type=text/html; charset=utf-8 spring.freemarker.expose-request-attributes=true spring.freemarker.allow-session-override=true spring.freemarker.expose-spring-macro-helpers=true spring.freemarker.suffix=.ftl spring.freemarker.settings.datetime_format=yyyy-MM-dd HH:mm:ss spring.freemarker.settings.default_encoding=UTF-8
3.新建一個controller類來訪問
@Controller public class HelloController { @Autowired private UserService userService; @RequestMapping("hello") public String hello(ModelMap modelMap){ List<User> users = userService.getUsers(); User one = users.get(0); modelMap.put("user", one); return "hello"; //freemarker文件的名字
} }
4.新建一個ftl頁面文件
<!DOCTYPE html> <html lang="en-US"> <header></header> <body>hello,${user.id}</body> </html>
Freemarker的結構化布局
1.抽取header、footer、nav、js、分頁,利用freemarker提供的宏,將這些部分定義成宏。
2.頁面中引入header、footer
3.編寫頁面中自定義的部分