前言:
thymeleaf 是由thyme [taɪm] (百里香) ,leaf[li:f] (叶子)两个单词组成.
thymeleaf 是java模版引擎,可以很好的和spring集成。
1. 引入依赖
org.springframework.boot
spring-boot-starter-thymeleaf
2. application.properties中添加配置
spring.thymeleaf.cache=false
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.check-template-location=true
spring.thymeleaf.suffix=.html
spring.thymeleaf.encoding=UTF-8
spring.thymeleaf.content-type=text/html
spring.thymeleaf.mode=HTML
注:
Spring Boot使用的Thymeleaf 3.0或者更高版本是配置:spring.thymeleaf.mode=HTML。
如果Thymeleaf 2.0版本的话配置:spring.thymeleaf.mode=HTML5。
3. 创建Controller ,和相应html。
@Controller
@RequestMapping("/user")
public class UserController {
@RequestMapping(value = "/login")
public String login() {
return "/login";
}
}
上面返回/login
,即返回对应login.html,
登录页面
登录测试
如果页面需要使用thymeleaf需要添加命名空间xmlns:th="http://www.thymeleaf.org"
4.运行测试,访问'http://localhost:8080/user/login',效果如图:
5.后台用过模版引擎传递参数给页面
- 后台添加参数。笔者在 在上面的UserController添加方法,并设置参数:
@RequestMapping(value = "/login2")
public String login2(ModelMap map) {
Map userInfoMap = new HashMap<>();
userInfoMap.put("name", "张三");
userInfoMap.put("age", 24);
SimpleVo vo = new SimpleVo();
vo.setCode(1000);
vo.setMessage("请求成功");
map.put("userInfo", userInfoMap);
map.put("vo", vo);
return "/login2";
}
- 对应login2.html
thymeleaf模版,带数据的
用户名:
年龄:
访问对象属性: ,访问对象方法:
相对路径页面测试
据对路径测试(比如访问:百度)