1.要使用thymeleaf模板引擎,首先要再pom中引入thymeleaf依赖文件
1 <dependency> 2 <groupId>org.springframework.boot</groupId> 3 <artifactId>spring-boot-starter-thymeleaf</artifactId> 4 </dependency>
2.thymeleaf的简单使用
(1)只要将html文件放在resources/templates文件夹下,thymeleaf模板引擎就会将页面自动渲染
例:再template文件夹下创建一个success.html文件,然后通过localhost:8080/success请求,浏览器展现success.html文件中的内容。
①:resources/templates文件夹下创建success.html页面
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 </head> 7 <body> 8 <h1>成功</h1> 9 </body> 10 </html>
②:在Controller层创建HelloController类,然后在类里边创建请求映射
1 package com.xiaoma.springbootweb.controller; 2 3 import org.springframework.stereotype.Controller; 4 import org.springframework.web.bind.annotation.RequestMapping; 5 6 @Controller 7 public class HelloController { 8 9 @RequestMapping("/success") 10 public String success(){ 11 return "success"; 12 } 13 }
③:运行程序,测试结果。
3.thymeleaf语法-th语法
(1)th:text:设置当前元素的文本内容,相同功能的还有th:utext,两者的区别在于前者不会转义html标签,后者会转义html标签。
例:将HelloController类中的success方法改为
1 @RequestMapping("/success") 2 public String success(Map<String,Object> maps){ 3 maps.put("hello","你好"); 4 return "success"; 5 }
将success.html文件中body里的内容改为(注意:使用thymeleaf的时候要在html页面的html标签中引入命名空间xmlns:th="http://www.thymeleaf.org")
1 <body> 2 <h1>成功</h1> 3 <div th:text="${hello}">张三</div> 4 </body>
运行结果为,从结果可以看出,当使用模板引擎的时候,页面展现的数据是我们绑定的map中的数据,而不会展示html页面中想要展示的数据,如果将页面复制到其他地方单独运行的话,就会将“张三”展示出来,而不会展示我们绑定的“你好”这个数据了。这就是th:text的用法。
3.th:each : 遍历循环元素,和th:text或th:value一起使用。注意该属性修饰的标签位置。
4.th:if : 条件判断,类似的还有th:unless,th:switch,th:case。
5.th:insert : 代码块引入,类似的还有th:replace,th:include,三者区别很大,若使用不恰当会破坏html结构,常用于公共代码块的提取复用。
6.th:fragment : 定义代码块,方便被th:insert引用。
7.th:object : 声明变量,一般和*{}一起配合使用。这些东西的具体使用会在后面做crud实验的时候详细说明。
${...}
@{...}:定义URL链接的
#{...}:用来获取国际化内容的
~{...}
来源:https://www.cnblogs.com/XiaoMaGuai/p/15578075.html