文章目录
- 1. 定义
- 2. 设计目标
- 3. 官网
- 4. Spring 集成 Thymeleaf
- 1)添加依赖
- 2)创建模版
- 3)创建Controller
- 4)启动程序
- 5)执行验证
- 5. 代码详细
- 总结
1. 定义
Thymeleaf 是一个用于在 Web 应用程序中进行服务器端 Java 模板渲染的 Java 库。它是一种用于构建 Web 应用程序的模板引擎,专注于生成可在浏览器中正确显示的 HTML。
2. 设计目标
Thymeleaf 的设计目标之一是使模板更容易与浏览器中的原始 HTML 一起查看,这样即使在没有模板引擎的情况下,也可以正确地显示。
3. 官网
https://www.thymeleaf.org/
4. Spring 集成 Thymeleaf
1)添加依赖
在生成的项目中,确保在 pom.xml
文件中有 Thymeleaf 的依赖。
如下所示
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
这个依赖将包含 Spring Boot 对 Thymeleaf 的自动配置
2)创建模版
在 src/main/resources/templates
目录下创建 Thymeleaf 模板文件。
例如,创建一个名为 index.html 的文件
存放路径:src/main/resources/templates/index.html
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org"><head><meta charset="UTF-8"><title>Spring Demo</title></head><body><h1 th:text="${msg}"></h1></body>
</html>
这个简单的模板包含一个使用 Thymeleaf 表达式的标题,${msg} 处会显示 Java 后台给我传回来的信息
3)创建Controller
创建一个简单的控制器类,用于处理页面请求:
package com.cheney.demo.controller;import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;@Controller
public class HelloController {@GetMapping("/hello")public String hello(Model model) {model.addAttribute("msg", "Hello Thymeleaf");return "index";}
}
这个控制器有一个 hello
方法,该方法通过 Model
将消息传递给 Thymeleaf 模板,并返回模板的名称,并且会将 “Hello Thymeleaf” 携带到 HTML 为 ${msg} 赋值,再通过 HTML 自己去渲染。
4)启动程序
5)执行验证
使用浏览器访问如下的 URL,就能够看到一个包含 Thymeleaf 表达式的页面啦
http://localhost:8080/hello
5. 代码详细
https://github.com/cheney09/spring-practical-combat/tree/main/12/demo
总结
至此,就已经成功的使用 Spring Boot 集成了 Thymeleaf 模版引擎并创建了一个简单的动态 Web 应用程序。这仅仅是一个入门级的例子,Thymeleaf 提供了丰富的功能,包括表达式、条件语句、迭代等,使你能够更灵活地构建复杂的页面。希望这篇博客能帮助你走入 Thymeleaf 的大门。