当前位置: 首页 > news >正文

Thymeleaf基础语法

Thymeleaf 是一种用于 Web 和非 Web 环境的现代服务器端 Java 模板引擎。它能够处理 HTML、XML、JavaScript、CSS 甚至纯文本。以下是 Thymeleaf 的一些基础语法:

1. 变量表达式

<!-- 显示变量的值 -->
<p th:text="${name}">Default Name</p>

2. 选择变量表达式

<!-- 选择变量的值,如果没有选择到则显示默认值 -->
<p th:text="${name?:'Default Name'}">Default Name</p>

3. 消息表达式

<!-- 显示国际化的消息 -->
<p th:text="#{welcome}">Welcome to our site!</p>

4. 链接 URL 表达式

<!-- 创建链接 -->
<a th:href="@{/hello(name=${name})}">Hello Link</a>

5. 消息参数

<!-- 显示带有参数的消息 -->
<p th:text="#{greeting(hello=${name},number=${age})}">Hi, John!</p>

6. 条件表达式

<!-- 条件判断 -->
<div th:if="${age > 18}">Old Enough</div>
<div th:unless="${age > 18}">Too young</div>

7. 循环

<!-- 迭代列表 -->
<ul><li th:each="user : ${users}" th:text="${user.name}">John Doe</li>
</ul>

8. 属性表达式

<!-- 设置属性值 -->
<img th:src="@{/image/{filename}(filename=${user.profilePic})}" alt="Profile Picture">

9. 文本块

<!-- 内联文本块 -->
<div th:utext="'Hello, ' + ${name} + '!'">Hello, John!</div>

10. 选择块

<!-- 根据条件选择不同的块 -->
<div th:switch="${user.role}"><p th:case="'admin'">Admin User</p><p th:case="'guest'">Guest User</p><p th:case="*">Regular User</p>
</div>

11. 片段

<!-- 定义片段 -->
<div th:fragment="copy">&copy; 2024</div><!-- 插入片段 -->
<div th:insert="footer :: copy">Footer Content</div>

12. 包含

<!-- 包含其他模板 -->
<head th:include="header :: head"></head>

13. 表达式方法

<!-- 调用自定义的表达式方法 -->
<p th:text="${#dates.format(#dates.createNow(),'yyyy-MM-dd')}">Today's Date</p>

14. 服务器端跳转

<!-- 重定向 -->
<div th:action="@{/home}">Home Page</div>

15. 内联表达式

<!-- 在 HTML 属性中使用内联表达式 -->
<input type="text" th:field="*{name}" />

Thymeleaf 的语法非常灵活,可以与 HTML 很好地集成,使得在模板中嵌入动态内容变得非常简单。

http://www.lryc.cn/news/450903.html

相关文章:

  • spring cloud alibaba学习路线
  • 基于 Seq2Seq 的中英文翻译项目(pytorch)
  • 部标主动安全(ADAS+DMS)对接说明
  • C++ STL(1)迭代器
  • uview表单校验不生效问题
  • 前端开发设计模式——单例模式
  • 行情叠加量化,占据市场先机!
  • 大厂面试真题-ConcurrentHashMap怎么保证的线程安全?
  • 【RabbitMQ】消息堆积、推拉模式
  • MySQL常用SQL语句(持续更新中)
  • 【更新】红色文化之红色博物馆数据集(经纬度+地址)
  • Python项目Flask框架整合Redis
  • 完整网络模型训练(一)
  • 高效便捷,体验不一样的韩语翻译神器
  • Markdown笔记管理工具Haptic
  • 网络原理-传输层UDP
  • C++中,如何使你设计的迭代器被标准算法库所支持。
  • Java NIO 全面详解:掌握 `Path` 和 `Files` 的一切
  • bluez免提协议hands-free介绍,全到无法想象,bluez hfp ag介绍
  • 关于区块链的安全和隐私
  • 特征工程——一门提高机器学习性能的艺术
  • Paper解读:工作场所人机协作的团队形成:促进组织变革的目标编程模型
  • 图文深入理解Oracle Network配置管理(一)
  • leetcode-链表篇3
  • RAG(Retrieval Augmented Generation)及衍生框架:CRAG、Self-RAG与HyDe的深入探讨
  • C语言介绍
  • 损失函数篇 | YOLOv10 更换损失函数之 MPDIoU | 《2023 一种用于高效准确的边界框回归的损失函数》
  • WMware安装WMware Tools(Linux~Ubuntu)
  • SLAM ORB-SLAM2(30)关键帧跟踪
  • k8s 部署 prometheus