1.thymeleaf模板引擎是什么?
Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎。它与 JSP,Velocity,FreeMaker 等模板引擎类似,也可以轻易地与 Spring MVC 等 Web 框架集成。与其它模板引擎相比,Thymeleaf 最大的特点是,即使不启动 Web 应用,也可以直接在浏览器中打开并正确显示模板页面 。
Thymeleaf官网:xml https://www.thymeleaf.org/
2.使用步骤
1)导入依赖
<!-- thymeleaf模板依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
2)添加命名空间
xmlns:th=http://www.thymeleaf.org
3) Thymeleaf中的基本表达式:@{},#{},${},*{}
1、@{}:thymeleaf中的超链接表达式
<a th:href="@{/user/login}"></a>
<a th:src="@{/user/login}"/>
2、#{}:thymeleaf中的消息表达式、或者是资源表达式
一般和 th:text一起使用多一点,#{}取出来的值取代了标签中的值,#{key}对应的value。如果标签中间已经有值,#{}取出来的值会覆盖标签中的值
<div th:text="#{user}"> </div>
3、${}
:变量表达式,用于访问的是容器上下文的变量,比如域变量:request域,session域
仔细想一想,有点jstl中的${}功能的意思
// 后端代码
session.setAttribute("list",list);
<--取域中的值-->
<div>[[${list}]]</div>
4、*{}:选择表达式,是选定的对象,不是整个环境的映射
如果没对象,和变量表达式${} 基本上没区别
<p>Name: <span th: text=" *{firstName}" >Sebastian</span>. </p>
<p>Surname: <span th: text=" *{lastName}" >Pepper</span>. </p>