跳转到主内容
websoft网络软件专家 - 深耕网络技术,打造实用软件!

Thymeleaf 入门新手教程 快速学习

这是一个针对新手的 Thymeleaf “极速上手” 教程。

我们将绕过复杂理论,直接通过一个可运行的例子,让你在10分钟内掌握核心用法。

1. 核心理念:自然模板 Thymeleaf 的核心优势在于:你写的

.html

文件可以直接用浏览器打开看静态效果,加上

th:

属性后就是动态模板。

静态原型 :

Default User

动态模板 :

Default User

2. 环境搭建(Spring Boot) 在

pom.xml

中只需一个依赖:

org.springframework.boot spring-boot-starter-thymeleaf

默认规则 :模板文件放在

src/main/resources/templates/

3. 5个必须掌握的语法 3.1 变量表达式${} 作用 :显示后台传来的数据。

Controller:

model.addAttribute("message", "Hello, Thymeleaf!");

model.addAttribute("user", new User("Alice", 25)); Template:

这里的内容会被替换

用户名:默认名

年龄:0

3.2 链接表达式@{} 作用 :生成正确的 URL 路径。

查看资料 商品详情

3.3 循环th:each 作用 :遍历列表。

Controller:

List hobbies = Arrays.asList("读书", "游泳", "编程");

model.addAttribute("hobbies", hobbies); Template:

  • 一个爱好
  • 0 - 读书

3.4 条件判断th:if/th:unless 作用 :根据条件显示/隐藏内容。

欢迎,成年人!

未成年人需家长陪同

用户信息
用户未登录

3.5 表单绑定th:object+th:field 作用 :快速绑定表单数据(最强大的功能!

)。

Controller:

model.addAttribute("user", new User());

Template:

注意 :

th:object

指定绑定对象,

*{field}

表示当前对象的属性。

4. 完整可运行示例 步骤1:创建 Controller

@Controller

public class DemoController {

@GetMapping("/demo") public String demo(Model model) { // 传递字符串 model.addAttribute("title", "Thymeleaf 演示");

// 传递对象 User user = new User("张三", 20); model.addAttribute("user", user);

// 传递列表 List skills = Arrays.asList("Java", "Spring", "Thymeleaf"); model.addAttribute("skills", skills);

return "demo"; // 对应 templates/demo.html }

// 简单的User类 public static class User { private String name; private int age;

// 构造方法、getter、setter... public User(String name, int age) { this.name = name; this.age = age; } // 省略getter/setter... } } 步骤2:创建模板templates/demo.html

Thymeleaf 快速上手

默认标题

姓名:未知

年龄:0

已成年

未成年人

技能列表:

  • 默认技能
返回首页

步骤3:运行并访问 启动应用,访问:

http://localhost:8080/demo

5. 常用技巧总结 场景代码示例 显示当前时间2024-01-01字符串拼接欢迎:用户判断集合为空

有技能
设置属性
内容
内联表达式

Hello, [[${user.name}]]!

6. 调试技巧 检查模板路径 :确保HTML文件在

src/main/resources/templates/

检查控制器注解 :使用

@Controller

而不是

@RestController

检查数据传递 :确保Model中addAttribute的key与模板中的变量名一致 浏览器直接打开 :测试静态效果是否符合预期 这个教程覆盖了Thymeleaf 90%的日常使用场景。

按照这个流程走一遍,你就能快速上手开发了!

遇到具体问题再针对性地深入学习即可。

java其它模板引擎:FreeMarker,Velocity,Mustache,Groovy

相关文章