Spring Boot中使用Thymeleaf进行页面渲染

Spring Boot中使用Thymeleaf进行页面渲染

大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们将探讨如何在Spring Boot应用中使用Thymeleaf模板引擎进行页面渲染,这是构建现代化Web应用不可或缺的一部分。

Spring Boot中使用Thymeleaf进行页面渲染

Thymeleaf是一款优秀的Java模板引擎,特别适合用于构建Spring MVC Web应用。它不仅提供了强大的模板功能,还能与Spring Boot完美集成,使得开发者可以通过简单的标记语言构建动态页面,同时保持良好的可维护性和扩展性。

第一步:配置Spring Boot集成Thymeleaf

添加Thymeleaf依赖

在Spring Boot项目的pom.xml文件中添加Thymeleaf依赖:

xml 复制代码
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
配置Thymeleaf模板位置

默认情况下,Thymeleaf会自动查找位于src/main/resources/templates/目录下的HTML模板文件。您可以在application.properties中配置自定义的模板路径:

properties 复制代码
# Thymeleaf模板配置
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
spring.thymeleaf.cache=false
创建Thymeleaf模板文件

在src/main/resources/templates/目录下创建Thymeleaf模板文件,例如index.html:

html 复制代码
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Spring Boot Thymeleaf Demo</title>
</head>
<body>
    <h1>Welcome to Spring Boot Thymeleaf Demo</h1>
    <p th:text="'Hello, ' + ${user.name} + '!'" />
</body>
</html>

第二步:在Spring Boot控制器中使用Thymeleaf

编写控制器

创建一个简单的控制器类,处理HTTP请求并返回Thymeleaf模板:

java 复制代码
package cn.juwatech.springbootthymeleaf.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import cn.juwatech.springbootthymeleaf.model.User;

@Controller
public class HomeController {

    @GetMapping("/")
    public String home(Model model) {
        User user = new User("Alice");
        model.addAttribute("user", user);
        return "index";
    }
}
模型数据绑定

在控制器方法中,通过Model对象将数据传递给Thymeleaf模板。在这个例子中,我们创建了一个User对象,并通过${user.name}在模板中显示其名字。

第三步:Thymeleaf模板引擎的标记语言

使用Thymeleaf标签

Thymeleaf提供了丰富的标签和属性,用于动态渲染HTML页面。例如,${user.name}用于显示用户的名字,th:text属性用于在元素内部显示动态文本。

结语

通过本文的介绍,您了解了如何在Spring Boot应用中集成和使用Thymeleaf进行页面渲染。Thymeleaf不仅简化了HTML页面的开发,还提供了强大的模板功能和灵活的扩展性,适合构建现代化的Web应用程序。

相关推荐
陈随易4 小时前
Postman 被曝自动往 Claude Code 和 Codex 装插件
前端·后端·程序员
AI你一生一世5 小时前
不止于时序存储:DolphinDB 如何成为 AI 时代的工业智能底座
java·人工智能·struts·时序数据库·工业智能·dolphindb·ai基础设施
云-缩影5 小时前
拆解 AI 图像生成应用的后端架构:ECS、OSS 和大模型 API 怎么配合
java·spring boot·后端
瑞克-桑切斯6 小时前
7、MySQL 慢查询排查与优化实战指南
java·服务器·数据库
考虑考虑7 小时前
Posrgresql恢复.backup文件
数据库·后端·postgresql
无奈何杨7 小时前
风控决策系统决策流,策略模式,权重、顺序、投票、最坏
后端
AI开源软件7 小时前
SpringBoot3+Vue3 财务管理系统如何设计:从业务单据到总账的模块划分
spring boot·vue3·领域建模·会计凭证·ruoyi office·业财协同·财务系统设计
Patrick_Wilson8 小时前
Go 为什么需要 defer?从函数怎么收尾说起
后端·go·编程语言
苏三说技术8 小时前
DeepSeek Harness入驻B站,评论区被干成了大型插件集市!
后端
橙序员小站9 小时前
我一句话让 AI 把公众号工作台搭完了:部署实测记录
后端