Thymeleaf基础教程

系列文章目录

`


文章目录

  • 系列文章目录
  • 一、Thymeleaf 语法规则
  • 二、Thymeleaf 语法分为以下 2 类
    • 标准表达式语法
    • th 属性
    • 2.1 基础语法
      • 2.1.1 变量表达式 ${}
      • 2.1.2 选择变量表达式 *{}
      • 2.1.3 链接表达式 @{}
    • 2.1.4 消息表达式
  • 三、常用的 th 标签
  • 四、迭代循环


一、Thymeleaf 语法规则

thymeleaf依赖导入:

<!-- thymeleaf依赖 -->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

html 标签中声明名称空间:

<html xmlns:th="http://www.thymeleaf.org"></html>

Thymeleaf 作为一种模板引擎,它拥有自己的语法规则。Thymeleaf 语法分为以下 2 类:

二、Thymeleaf 语法分为以下 2 类

标准表达式语法

th 属性

2.1 基础语法

2.1.1 变量表达式 ${}

使用方法:直接使用 th:xx = “${}” 获取对象属性:前端获取后端的数据

<form id="userForm"><input id="id" name="id" th:value="${user.id}"/><input id="username" name="username" th:value="${user.username}"/><input id="password" name="password" th:value="${user.password}"/>
</form><div th:text="hello"></div><div th:text="${user.username}"></div>

2.1.2 选择变量表达式 *{}

使用方法:首先通过th:object 获取对象,然后使用th:xx = "*{}"获取对象属性。
这种简写风格极为清爽,推荐大家在实际项目中使用

<form id="userForm" th:object="${user}"><input id="id" name="id" th:value="*{id}"/><input id="username" name="username" th:value="*{username}"/><input id="password" name="password" th:value="*{password}"/>
</form>

2.1.3 链接表达式 @{}

使用方法:通过链接表达式@{}直接拿到应用路径,然后拼接静态资源路径:

<script th:src="@{jquery/jquery-1.10.2.min.js}"></script>
<link th:href="@{bootstrap/css/bootstrap.css}" rel="stylesheet" type="text/css">

2.1.4 消息表达式

即通常的国际化属性:#{msg} 用于获取国际化语言翻译值

<title th:text="#{user.title}"></title>

三、常用的 th 标签

在这里插入图片描述

常用标签有很多,部分举例。

四、迭代循环

想要遍历List集合很简单,配合th:each 即可快速完成迭代。例如遍历用户列表:

<div th:each="user:${users}">id:<input id="id" name="id" th:value="${user.id}"/> <br>姓名:<input id="username" name="username" th:value="${user.username}"/> <br>
</div>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/438379.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++类和对象引入以及类的介绍使用

文章目录 一、面向过程和面向对象的初步认识二、类的引入2.2 类的引入 三、类的访问限定符及封装3.3 访问限定符3.4 【面试题】C中struct和class的区别3.5 类的两种定义方式 四、封装【面试题】面向对象的三大特性 五、类的作用域六、类的实例化七、类对象模型7.1 类对象的存储…

网络通信实现

【 一 】网络通信实现 【 1 】实现网络通信的四要素 本机的ip地址 子网掩码 网关的IP地址 DNS的IP地址( 域名系统) DNS服务器是指提供域名解析服务的服务器。它负责将域名转换为相应的IP地址&#xff0c;以便计算机可以通过IP地址与其他设备进行通信。 通过使用DNS服务器…

ESP8266采用AT指令连接华为云服务器方法(MQTT固件)

一、前言 本篇文章主要介绍3个内容&#xff1a; &#xff08;1&#xff09;ESP8266-WIFI模块常用的AI指令功能介绍 &#xff08;2&#xff09;ESP8266烧写MQTT固件连接华为云IOT服务器。 &#xff08;3&#xff09;介绍华为云IOT服务器的配置过程。 ESP8266是一款功能强大…

LVGL部件

一.标签部件 1.如何创建标签部件以及设置文本 ![2024-01-28T09:54:08.png][3] void my_lvgl(void) {lv_obj_t *lablelv_label_create(lv_scr_act()); //创建一个标签lv_label_set_text(lable,"hello"); //普通更改文字lv_label_set_text_fmt(lab…

统计学-认识数据

数据 如&#xff1a; 定性数据&#xff1a; 性别&#xff1a;男、女 颜色&#xff1a;红、绿、青、蓝、紫 教育程度&#xff1a;高中、本科、硕士、博士 评价&#xff1a;好评、中评、差评 定量数据&#xff1a; 年份&#xff1a;2019、2018、2017、2016 温度&#xff1a;10、…

专业133总分400+上海交通大学819考研经验分享上交819电子信息与通信工程

今年专业819信号系统与信号处理133&#xff0c;总分400&#xff0c;如愿考上梦中上海交通大学&#xff0c;通过自己将近一年的复习&#xff0c;实现了人生中目前为止最大的逆袭&#xff08;自己本科学校很普通&#xff09;&#xff0c;总结自己的复习经历&#xff0c;希望可以给…

C++ 数论相关题目 扩展欧几里得算法(裴蜀定理)

给定 n 对正整数 ai,bi &#xff0c;对于每对数&#xff0c;求出一组 xi,yi &#xff0c;使其满足 aixibiyigcd(ai,bi) 。 输入格式 第一行包含整数 n 。 接下来 n 行&#xff0c;每行包含两个整数 ai,bi 。 输出格式 输出共 n 行&#xff0c;对于每组 ai,bi &#xff0c;求…

多只动物3D姿态估计与行为识别系统

动物社会行为的量化是动物科学研究的重要步骤。虽然现有的深度学习方法已经实现了对常见动物的精确姿态估计、识别和行为分类&#xff0c;但由于缺乏注释良好的数据集&#xff0c;其应用依然受到挑战。因此该研究展示了一个计算框架&#xff0c;即社会行为图谱&#xff08;SBeA…

MkDocs 部署指南

简介 MkDocs 可以同时编译多个 markdown 文件&#xff0c;形成书籍一样的文件。有多种主题供你选择&#xff0c;很适合项目使用。 MkDocs 是快速&#xff0c;简单和华丽的静态网站生成器&#xff0c;可以构建项目文档。文档源文件在 Markdown 编写&#xff0c;使用单个 YAML …

大数据StarRocks(八):资源隔离实战

前言 自 2.2 版本起&#xff0c;StarRocks 支持资源组管理&#xff0c;集群可以通过设置资源组&#xff08;Resource Group&#xff09;的方式限制查询对资源的消耗&#xff0c;实现多租户之间的资源隔离与合理利用。在 2.3 版本中&#xff0c;StarRocks 支持限制大查询&#…

qt5-入门

参考&#xff1a; qt学习指南 Qt5和Qt6的区别-CSDN博客 Qt 学习之路_w3cschool Qt教程&#xff0c;Qt5编程入门教程&#xff08;非常详细&#xff09; 本地环境&#xff1a; win10专业版&#xff0c;64位 技术选择 Qt5力推QML界面编程。QML类似HTML&#xff0c;可以借助CSS进…

LabVIEW机械臂轨迹跟踪控制

介绍了一个使用LabVIEW开发的机械臂轨迹跟踪控制系统。该系统的主要目标是实现对机械臂运动轨迹的精确控制&#xff0c;使其能够按照预定路径进行精确移动。此系统特别适用于需要高精度位置控制的场合&#xff0c;如自动化装配、精密操作等。 为了实现LabVIEW环境下的机械臂轨迹…