【Spring Boot】Thymeleaf 模板引擎
Thymeleaf组成:标签 + 表达式,标签是Thymeleaf的语法结构,而表达式就是语法里的内容实现
pom.xml 添加依赖包
<!-- 模板引擎 Thymeleaf 依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> <version>2.1.6.RELEASE</version> </dependency>
在html页面中引入thymeleaf命名空间
<html lang="en" xmlns:th="http://www.thymeleaf.org">
基本表达式
${...} 变量表达式,用于访问容器上下文环境中的变量,功能同jstl中${} *{...} 选择表达式,一般是th:object之后,直接取Object中的属性。当没有选取对象时,其功能等同于${...} #{...} 消息表达式 通常与th:text属性一起使用,指明声明了th:text的标签的文本是#{}中的key所对应的value,而标签内的文本将不会显示 消息表达式通常用于显示页面静态文本,将静态文本维护在properties文件中也方面维护,做国际化等 @{...} 超链接url的表达式 例如: <script th:src="@{/resources/js/jquery/jquery.json-2.4.min.js}" #maps 工具对象表达式。常用于日期、集合、数组对象的访问。这些工具对象就像是java对象,可以访问对应java对象的方法来进行各种操作 其他工具对象表达式 #dates #calendars #numbers #strings #objects #bools #arrays #lists #sets
常用属性
th:action 定义后台控制器路径,类似<form>标签的action属性 例如: <form id="login-form" th:action="@{/login}">...</form> th:each 对象遍历,功能类似jstl中的<c:forEach>标签 th:object 用于表单数据对象绑定,将表单绑定到后台controller的一个JavaBean参数。常与th:field一起使用进行表单数据绑定 th:value 用于标签赋值,类似<option>标签的value属性。 th:field 常用于表单字段绑定。通常与th:object一起使用。 属性绑定、集合绑定。 th:href 定义超链接,类似<a>标签的href 属性。value形式为@{/logout} 例如: <a th:href="@{/logout}" class="signOut"></a> th:src 用于外部资源引入,类似于<script>标签的src属性,常与@{}一起使用 th:id div id声明,类似html标签中的id属性。 th:text 文本显示 th:if 条件判断。例如: <div th:if="${rowStat.index} == 0">... do something ...</div> th:fragment 声明定义该属性的div为模板片段,常用与头文件、页尾文件的引入。常与th:include,th:replace一起使用。 th:include th:replace 例如: 声明模板片段 /WEBINF/templates/footer. html <div th: fragment=" copy" > Demo </div> 引入模板片段 <div th: include=" /templates/footer : : copy" ></div> <div th: replace=" /templates/footer : : copy" ></div>
-------------------------------------------------------------------------------------
如果万事开头难 那请结局一定圆满 @ Phoenixy
-------------------------------------------------------------------------------------