Thymeleaf语法标签
Thymeleaf 是一个用于 Web 和端的 Java 模板引擎,能够处理 HTML、XML、JavaScript、CSS 甚至纯文本。类似于 JSP,PHP 等技术,它也可以嵌入到 HTML 中去,使得开发者能够清晰的分辨出视图和业务逻辑。
在 Thymeleaf 中,有一些常用的语法标签,以下是一些常用的 Thymeleaf 语法标签:
- 变量表达式:
${...}
变量表达式是在服务器端解析的,并且可以直接访问模型中的属性。
<p>Hello, <span th:text="${name}">Name</span>!</p>
- 选择变量表达式:
*{...}
选择变量表达式是针对被选定对象的变量表达式。
<form th:object="${user}">
<input type="text" th:field="*{username}" />
<input type="password" th:field="*{password}" />
</form>
- 消息表达式:
#{...}
消息表达式用于获取外部化消息。
<p th:text="#{header.welcome}">Welcome!</p>
- 链接表达式:
@{...}
链接表达式用于创建链接 URL。
<a th:href="@{http://www.thymeleaf.org}">Thymeleaf</a>
<a th:href="@{/order/list}">Orders</a>
- 片段表达式:
~{...}
片段表达式用于片段模板的引入。
<div th:insert="~{footer :: footer}"></div>
- 条件表达式:
(if)
,(unless)
,(switch)
条件表达式用于条件判断。
<div th:if="${user.isAdmin()}">Admin content</div>
<div th:unless="${user.isAnonymous()}">Non-anonymous content</div>
<div th:switch="${user.role}">
<p th:case="'admin'">User is an administrator</p>
<p th:case="'user'">User is a simple user</p>
</div>
- 循环表达式:
th:each
循环表达式用于迭代集合对象。
<tr th:each="item, iterStat : ${items}">
<td th:text="${iterStat.index}"> </td>
<td th:text="${item.name}"> </td>
</tr>
- 字面量:
字面量是直接在模板中使用的值。
<p th:text="'Let's go!'"> </p>
<p th:text="2019 + 1"> </p>
<p th:text="'I am only a ' + 2019 + ' year old man.'"> </p>
以上就是一些常用的 Thymeleaf 语法标签,在实际开发中可以根据需要灵活使用。
评论已关闭