Thymeleaf示例
时间: 2025-01-06 12:46:43 浏览: 5
### Thymeleaf 使用示例
#### 绑定文本内容
为了展示如何使用 Thymeleaf 的 `th:text` 属性来绑定标签内的文本内容,可以考虑如下 HTML 片段:
```html
<span th:text="${greetingMessage}">This text will be replaced</span>
```
此代码会将 `<span>` 标签中的默认文本替换为由服务器端提供的 `greetingMessage` 变量的内容[^2]。
#### 条件渲染元素
当需要基于某些条件决定是否显示某个 HTML 元素时,可利用 `th:if` 和 `th:unless` 这两个属性。例如:
```html
<a th:if="${isLoggedIn}" href="/profile">Profile</a>
<a th:unless="${isLoggedIn}" href="/login">Login</a>
```
这里展示了根据用户的登录状态动态切换 Profile 或 Login 链接的逻辑[^4]。
#### 时间日期格式化
对于时间戳类型的数据显示,通常希望按照特定格式呈现给用户查看。这可以通过内置的对象和函数实现,比如 `${#dates}` 工具对象用于处理日期操作:
```html
<span th:text="${#dates.format(currentDate, 'yyyy-MM-dd HH:mm:ss')}"></span>
```
这段代码能够把当前的时间以指定格式输出到网页上[^3]。
#### 页面布局继承与片段重用
为了让多个页面共享相同的头部信息而不必重复编写相同部分,在 Thymeleaf 中引入了模板片段的概念。下面是一个简单的例子说明怎样在一个新页面里嵌入已定义好的 header 结构:
```html
<head th:replace="fragments/header :: commonHeader">
<!-- 默认情况下这里的任何东西都会被替代掉 -->
</head>
```
上述代码实现了从 fragments 文件夹下的 header.html 文件加载名为 `commonHeader` 的片段并应用于此处[^5]。
阅读全文