SpringBoot自带模板引擎Thymeleaf使用详解
创始人
2025-07-06 05:11:15
0

SpringBoot是一个流行的Java框架,它提供了许多功能和插件,以简化Web应用程序的开发过程。其中之一是Thymeleaf模板引擎,它是一个流行的Java模板引擎,用于在Web应用程序中渲染HTML页面。

在SpringBoot中使用Thymeleaf非常简单,以下是使用Thymeleaf作为模板引擎的步骤:

添加依赖

首先,在项目的pom.xml文件中添加Thymeleaf的依赖:


    org.springframework.boot
    spring-boot-starter-thymeleaf
    {version}

其中{version}是SpringBoot的版本号。

配置Thymeleaf

在application.properties或application.yml文件中添加以下配置:

spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
spring.thymeleaf.mode=HTML5
spring.thymeleaf.encoding=UTF-8
spring.thymeleaf.content-type=text/html

这些配置项指定了模板文件的存放路径、文件名后缀、模板模式、编码格式和内容类型。

创建模板文件

创建一个HTML模板文件,例如index.html,并将其放置在
/src/main/resources/templates/目录下。在该文件中,你可以使用Thymeleaf的语法来定义动态内容。

例如,以下是一个简单的index.html文件:




    Welcome to my site


    

Hello World!

在这个例子中,我们使用了th:text属性来定义一个动态文本,它会被渲染为页面上的标题。

创建控制器

创建一个控制器类,例如IndexController.java,并将其放置在/src/main/java/目录下。在该类中,你可以使用@Controller和@GetMapping注解来定义一个处理HTTP GET请求的方法。

例如,以下是一个简单的IndexController类:

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;

@Controller
public class IndexController {
 
    @GetMapping("/")
    public String index(Model model) {
        model.addAttribute("title", "Welcome to my site");
        return "index";
    }
}

在这个例子中,我们使用@GetMapping注解来定义一个处理/路径的HTTP GET请求的方法。该方法将"title"属性添加到Model对象中,并将其返回值设置为"index",这表示渲染index.html模板文件。

  1. 启动应用程序并查看结果

启动SpringBoot应用程序并访问首页(即/路径),你应该会看到一个带有"Welcome to my site"标题的页面。这是因为控制器方法将"title"属性添加到Model对象中,并返回了"index"字符串,这导致Thymeleaf引擎渲染了index.html模板文件,并将"title"属性的值插入到h1元素中。

以上就是在SpringBoot中使用Thymeleaf模板引擎的简单示例。Thymeleaf具有许多其他功能和特性,例如循环、条件语句、变量替换等等,可以让你更加灵活地渲染HTML页面。如果你想了解更多关于Thymeleaf的信息,请查看官方文档或参考相关教程和示例代码。

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
粉嫩如何诠释霸道 东芝M805... “霸道粉”是个什么玩意东芝M805拿过来的时候,笔者扑哧笑了,不是笑这款笔记本,而是笑这款产品的颜色...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
全面诠释网络负载均衡 负载均衡的出现大大缓解了服务器的压力,更是有效的利用了资源,提高了效率。那么我们现在来说一下网络负载...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
30分钟搞定iOS自定义相机 最近公司的项目中用到了相机,由于不用系统的相机,UI给的相机切图,必须自定义才可以。就花时间简单研究...
Intel将Moblin社区控... 本周二,非营利机构Linux基金会宣布,他们将担负起Moblin社区的管理工作,而这之前,Mobli...