springboot-整合freemarker
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.编写页面中自定义的部分