首页 > 其他分享 >SpringBoot整合Thymeleaf详解

SpringBoot整合Thymeleaf详解

时间:2024-11-07 15:18:18浏览次数:3  
标签:SpringBoot spring Thymeleaf thymeleaf 详解 整合 模板

文章目录

SpringBoot整合Thymeleaf详解

一、引言

在现代Java Web开发中,Spring Boot因其简化配置和快速开发的特点而广受欢迎。Thymeleaf作为一个现代服务器端Java模板引擎,能够很好地与Spring Boot集成,提供声明式的视图处理。本文将详细介绍如何在Spring Boot项目中整合Thymeleaf,并展示其基本用法。

二、SpringBoot与Thymeleaf的整合

1、配置Thymeleaf

1.1、添加依赖

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

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
1.2、配置属性

接下来,在application.propertiesapplication.yml文件中配置Thymeleaf的相关属性。
application.properties为例:

# Thymeleaf模板配置
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
spring.thymeleaf.mode=HTML5
spring.thymeleaf.encoding=UTF-8
spring.thymeleaf.content-type=text/html
spring.thymeleaf.cache=false

application.yml文件中配置Thymeleaf的相关属性:

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

在开发阶段,建议将cache设置为false以禁用缓存,这样可以即时看到页面的更改效果。

2、创建Controller

创建一个简单的Controller来返回视图和数据:

@Controller
public class GreetingController {

    @RequestMapping(value = "/greeting")
    public ModelAndView test(ModelAndView mv) {
        mv.setViewName("greeting");
        mv.addObject("title", "欢迎使用Thymeleaf!");
        return mv;
    }
}

三、编写Thymeleaf模板

src/main/resources/templates目录下创建greeting.html文件,编写Thymeleaf模板:

<!DOCTYPE HTML>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">
<head>
    <title>Getting Started: Serving Web Content</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <link th:href="@{/css/1.css}" rel="stylesheet"/>
</head>
<body>
<p th:text="'Hello, ' + ${title}" /><br/>

<script th:src="@{/js/jquery/1.11.0/jquery.js}"></script>
<script>
    $(function(){
       alert("page load finish.");
    });
</script>
</body>
</html>

在这个模板中,我们使用了Thymeleaf的th:text属性来动态显示从Controller传递过来的title变量。

四、总结

通过上述步骤,我们成功地在Spring Boot项目中整合了Thymeleaf,并创建了一个简单的页面。Thymeleaf的整合不仅简化了页面的开发,还提供了强大的表达式语言和自然模板语法,使得页面的维护和开发变得更加高效。


版权声明:本博客内容为原创,转载请保留原文链接及作者信息。

参考文章

标签:SpringBoot,spring,Thymeleaf,thymeleaf,详解,整合,模板
From: https://blog.csdn.net/NiNg_1_234/article/details/143594686

相关文章

  • Nuxt.js 应用中的 build:error 事件钩子详解
    title:Nuxt.js应用中的build:error事件钩子详解date:2024/11/7updated:2024/11/7author:cmdragonexcerpt:build:error是Nuxt.js中的一个生命周期钩子,当构建过程中发生错误时,该钩子将被调用。通过此钩子,开发者可以捕获和响应构建错误,进行相应的处理,例如记录日志或......
  • AI智能分析视频分析网关室内消防逃生通道占用检测算法详解
    在公共安全领域,特别是在火灾等紧急状况下,确保消防逃生通道的畅通对于快速疏散人群至关重要。但是,由于多种原因,这些逃生通道常常被堵塞或占用,极大地增加了疏散时的风险。为了应对这一挑战,人工智能驱动的室内消防逃生通道占用视频分析网关应运而生,成为提高消防安全水平的关键工具。......
  • LVM 扩容详解
    一、LVM扩容1.查看磁盘分区情况:fdisk-l  结果如下,可以看到有一块新的磁盘,需要扩容到 lvm中 2.查看pv、vg、lv情况  记录下vg名,如图,这里是centos 3.将新硬盘分区初始化pvcreate/dev/vdc(新硬盘)  可以看到如下信息即为初始化成功 4.将初始......
  • SpringBoot推荐图书阅读系统6c613 带论文文档1万字以上,文末可获取,
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表系统内容;用户,图书分类,图书信息开题报告内容一、课题背景与意义随着信息时代的到来,图书馆和在线阅读平台的书籍数量急剧增加,用户在寻找适合自己的阅读材料时......
  • SpringBoot外卖服务系统k83px 本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表系统内容:用户,商家,店铺信息,菜品分类,菜品信息,店铺公告开题报告内容一、研究背景与意义随着互联网技术的飞速发展,人们的生活方式正在发生深刻变革。在餐饮......
  • 山泽HDMI线与光纤音频线的区别详解
    在现代家庭娱乐系统中,选择合适的连接线材对于提升视听体验至关重要。山泽作为一家知名的线材品牌,提供了多种高质量的HDMI线和光纤音频线,帮助用户轻松搭建高性能的家庭影院。本文将详细介绍HDMI线与光纤音频线的区别,并推荐几款山泽的优质产品。HDMI线-高清晰度多媒体接口多......
  • 基于SpringBoot的Java教学支持系统开发指南
    1系统概述1.1研究背景随着计算机技术的发展以及计算机网络的逐渐普及,互联网成为人们查找信息的重要场所,二十一世纪是信息的时代,所以信息的管理显得特别重要。因此,使用计算机来管理教学辅助平台的相关信息成为必然。开发合适的教学辅助平台,可以方便管理人员对教学辅助平台......
  • SpringBoot Java教学辅助平台:构建高效学习环境
    1系统概述1.1研究背景随着计算机技术的发展以及计算机网络的逐渐普及,互联网成为人们查找信息的重要场所,二十一世纪是信息的时代,所以信息的管理显得特别重要。因此,使用计算机来管理教学辅助平台的相关信息成为必然。开发合适的教学辅助平台,可以方便管理人员对教学辅助平台......
  • 基于SpringBoot+Vue的网上超市设计与实现
    前言网络技术和计算机技术发展至今,已经拥有了深厚的理论基础,并在现实中进行了充分运用,尤其是基于计算机运行的软件更是受到各界的关注。加上现在人们已经步入信息时代,所以对于信息的宣传和管理就很关键。因此超市商品销售信息的管理计算机化,系统化是必要的。设计开发网上超......
  • 基于springboot+vue的毕业生实习与就业管理系统的设计与实现
    前言使用旧方法对毕业生实习与就业管理系统的信息进行系统化管理已经不再让人们信赖了,把现在的网络信息技术运用在毕业生实习与就业管理系统的管理上面可以解决许多信息管理上面的难题,比如处理数据时间很长,数据存在错误不能及时纠正等问题。这次开发的毕业生实习与就业管理......