Spring Boot中如何使用Thymeleaf模板引擎

devtools/2025/2/26 19:58:43/

Thymeleaf 是一个现代化的服务器端 Java 模板引擎,在 Spring Boot 项目中使用它可以方便地将 Java 代码和 HTML 页面进行整合,生成动态的 Web 页面。以下将详细介绍在 Spring Boot 中如何使用 Thymeleaf 模板引擎。

1. 添加依赖

如果你使用的是 Maven 项目,在 pom.xml 中添加 Thymeleaf 的依赖。在使用 Spring Initializr 创建项目时选择了 Thymeleaf 依赖,会自动添加以下内容;若未选择,可手动添加:

收起

xml

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

2. 配置 Thymeleaf

Spring Boot 对 Thymeleaf 有默认的配置,一般情况下无需额外配置。默认配置如下:

  • 模板文件位置src/main/resources/templates
  • 模板文件后缀.html
  • 缓存:开发环境建议关闭缓存,在 application.properties 或 application.yml 中进行配置。
application.properties 配置示例

收起

properties

spring.thymeleaf.cache=false
application.yml 配置示例

收起

yaml

spring:thymeleaf:cache: false

3. 创建控制器

创建一个控制器类,用于处理 HTTP 请求,并将数据传递给 Thymeleaf 模板。以下是一个简单的示例:

收起

java

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;import java.util.ArrayList;
import java.util.List;@Controller
public class HelloController {@GetMapping("/hello")public String hello(Model model) {

http://www.ppmy.cn/devtools/162875.html

相关文章

C# 封装

C# 封装 引言 封装(Encapsulation)是面向对象编程(OOP)中的一个核心概念,它指的是将对象的属性(数据)和操作(函数)捆绑在一起,形成独立的单元,从而隐藏对象的内部细节,只提供公共接口供外部访问。在C#中,封装是实现信息隐藏和数据保护的一种有效手段,可以提高代…

C++day6

编写一个如下场景&#xff1a; 有一个英雄Hero类&#xff0c;私有成员&#xff0c;攻击&#xff0c;防御&#xff0c;速度&#xff0c;生命值&#xff0c;以及所有的set get 方法 编写一个 武器 Weapon 类&#xff0c;拥有私有成员攻击力&#xff0c;以及set get 方法 编写一个…

DeepSeek开源周第二日-DeepEP

&#x1f680;deepseek开源周第二天&#xff0c;DeepEP&#xff1a;专为MoE和专家并行打造的高性能通信库 &#x1f525;DeepEP 主要特点 &#x1f4a1; 高效 GPU 通信内核&#xff1a;提供高吞吐、低延迟的 all-to-all GPU 内核&#xff08;MoE dispatch & combine&…

Ansible-03 docker安装-基于centos

1.创建invertory.ini并验证连通性 创建invertory.ini [docker_servers] 192.168.0.2执行命令 ansible -i invertory.ini docker_servers -m ping结果 192.168.0.2 | SUCCESS > {"ansible_facts": {"discovered_interpreter_python": "/usr/lib…

API技术深度解析:构建高效、安全与可扩展的接口服务

在当今的数字化时代&#xff0c;应用程序接口&#xff08;API&#xff0c;Application Programming Interface&#xff09;已成为连接不同软件系统和服务的桥梁&#xff0c;是推动数字化转型的关键技术之一。无论是企业内部系统集成、第三方服务接入&#xff0c;还是面向开发者…

CNewMenu::QueryContextMenu函数分析之新建菜单项的创建

CNewMenu::QueryContextMenu函数分析之新建菜单项的创建 第一部分&#xff1a; HRESULT CNewMenu::QueryContextMenu(HMENU hmenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags) { // if they want the default menu only (CMF_DEFAULTONLY) OR //…

进程间通信中间件---ZeroMQ

ZeroMQ&#xff08;也称为 MQ 或 0MQ&#xff09;是一个高性能的异步消息传递库&#xff0c;专为分布式或并发应用程序设计。它提供了多种通信模式&#xff08;如请求-响应、发布-订阅等&#xff09;&#xff0c;并且可以在多种传输协议&#xff08;如 TCP、IPC、PGM 等&#x…

大语言模型(LLM)提示词(Prompt)高阶撰写指南

——结构化思维与工程化实践 一、LLM提示词设计的核心逻辑 1. 本质认知 LLM是「超强模式识别器概率生成器」&#xff0c;提示词的本质是构建数据分布约束&#xff0c;通过语义信号引导模型激活特定知识路径。优秀提示词需实现&#xff1a; 精准性&#xff1a;消除歧义&#…