SpringBoot中使用Thymeleaf模板详情

Spring Boot 是一个非常流行的 Java web 框架,它允许开发人员快速搭建基于 Java 开发的 Web 应用。而 Thymeleaf 是一个非常流行的 Java 模板引擎,它可以帮助我们快速构建 Web 界面。在 Spring Boot 应用中,我们可以使用 Thymeleaf 来构建视图。

具体步骤如下:

步骤一:添加依赖项

我们需要在我们的 Spring Boot 应用中添加依赖项。在 pom.xml 文件中添加以下代码:

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

步骤二:创建 Thymeleaf 模板

我们需要创建一个 Thymeleaf 模板,来指定我们的 Web 页面的布局。一个基本的 Thymeleaf 模板如下:

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8"/>
    <title>Thymeleaf Demo</title>
</head>
<body>
    <h1 th:text="${title}"></h1>
    <table>
        <thead>
            <tr>
                <th>Id</th>
                <th>Name</th>
            </tr>
        </thead>
        <tbody>
            <tr th:each="person : ${people}">
                <td th:text="${person.id}"></td>
                <td th:text="${person.name}"></td>
            </tr>
        </tbody>
    </table>
</body>
</html>

在这个模板中,我们使用了 Thymeleaf 的语法来指定变量。th:text 用于指定文字,th:each 用于指定一个遍历。我们也可以使用其他的 Thymeleaf 语法来指定条件语句以及循环语句。

步骤三:创建 Spring Boot 控制器

我们需要创建一个 Spring Boot 控制器来处理 Web 请求。一个基本的控制器如下:

@Controller
public class HomeController {
    @GetMapping("/")
    public String index(Model model) {
        String title = "Thymeleaf Demo";
        List<Person> people = Arrays.asList(new Person(1, "John"), new Person(2, "Jane"), new Person(3, "Bill"));
        model.addAttribute("title", title);
        model.addAttribute("people", people);
        return "index";
    }
}

在这个控制器中,我们使用了 @GetMapping 来指定请求路径。我们还使用了 Model 来将数据传递给模板。在这个例子中,我们将 titlepeople 变量传递给了模板。

步骤四:运行 Spring Boot 应用

我们需要运行 Spring Boot 应用,以便可以在浏览器中查看我们的 Web 页面。启动程序之后,在浏览器中访问 http://localhost:8080/ 即可查看我们的 Web 页面。

示例1:动态显示当前时间

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8"/>
    <title>Thymeleaf Demo</title>
</head>
<body>
    <h1 th:text="${title}"></h1>
    <p>当前时间是:<span th:text="${now}"></span></p>
</body>
</html>
@Controller
public class HomeController {
    @GetMapping("/")
    public String index(Model model) {
        String title = "Thymeleaf Demo";
        LocalDateTime now = LocalDateTime.now();
        model.addAttribute("title", title);
        model.addAttribute("now", now);
        return "index";
    }
}

示例2:动态加载图片

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8"/>
    <title>Thymeleaf Demo</title>
</head>
<body>
    <h1 th:text="${title}"></h1>
    <img th:src="${image}" alt="image">
</body>
</html>
@Controller
public class HomeController {
    @GetMapping("/")
    public String index(Model model) {
        String title = "Thymeleaf Demo";
        String imageUrl = "https://example.com/image.jpg";
        model.addAttribute("title", title);
        model.addAttribute("image", imageUrl);
        return "index";
    }
}

这样,我们就可以在我们的 Spring Boot 应用中使用 Thymeleaf 模板了。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot中使用Thymeleaf模板详情 - Python技术站

(0)
上一篇 2023年6月15日
下一篇 2023年6月15日

相关文章

  • Java数组队列概念与用法实例分析

    Java数组队列概念与用法实例分析 什么是队列 队列是一种特殊的线性数据结构,它的特殊之处在于它的插入和删除操作只能在队列的两端进行。从队列的一端插入元素可以称为“入队”,而从另一端删除元素则称为“出队”。 Java中的数组队列 Java中的数组队列是一种具体的队列实现方式。它内部使用数组作为底层数据结构,并支持动态扩容。在Java中可以使用Queue接口来…

    Java 2023年5月26日
    00
  • MyBatis实现模糊查询的几种方式

    下面是关于 MyBatis 实现模糊查询的几种方式的攻略。 使用 LIKE 关键字查询 在 SQL 语句中,LIKE 关键字可以匹配模糊字符串。我们可以使用它来进行模糊查询。MyBatis 框架也提供了对 LIKE 关键字的支持,具体代码如下: <select id="queryByKeyword" parameterType=&q…

    Java 2023年5月20日
    00
  • Java如何使用httpclient检测url状态及链接是否能打开

    下面是Java如何使用httpclient检测url状态及链接是否能打开的完整攻略。 1. 概述 在Java中,我们可以使用Apache HttpClient库来实现检测URL状态以及链接能否打开的功能,在使用HttpClient进行URL检测之前,需要导入相关的包和依赖,具体可以在Maven或者Gradle中添加以下依赖: <!–HttpClien…

    Java 2023年5月19日
    00
  • 搭建JavaWeb服务器步骤详解

    搭建JavaWeb服务器步骤详解 1. 选择合适的JavaWeb服务器 目前市场上比较流行的JavaWeb服务器有Tomcat、Jetty、Undertow等,选择适合自己的服务器进行搭建。 2. 下载并安装JavaWeb服务器 根据操作系统选择不同的版本进行下载,并按照官方指引进行安装。 3. 配置JavaWeb服务器 根据具体情况进行配置,比如设置端口号…

    Java 2023年5月19日
    00
  • SpringBoot自动配置深入探究实现原理

    下面我将详细讲解“SpringBoot自动配置深入探究实现原理”的完整攻略。 一、背景介绍 在使用SpringBoot框架开发应用时,我们通常可以通过简单的配置来快速搭建出一个完整的Web应用,并且很多第三方库(例如数据库连接池、缓存技术等)可以自动化集成,使得我们能够快速开发高效质量的应用,这就是SpringBoot自动配置的核心。 二、实现原理介绍 1.…

    Java 2023年5月15日
    00
  • SpringBoot超详细讲解集成Flink的部署与打包方法

    SpringBoot集成Flink的部署与打包方法 本文将介绍如何在SpringBoot应用程序中集成Flink,并提供详细的部署和打包方法。我们将使用Flink的DataStream API来实现一个简单的WordCount示例,并将其打包成可执行的Jar文件。 1. 集成Flink 在SpringBoot应用程序中集成Flink,我们需要添加以下依赖: …

    Java 2023年5月15日
    00
  • JVM自定义类加载器在代码扩展性实践分享

    下面是“JVM自定义类加载器在代码扩展性实践分享”的完整攻略。 什么是自定义类加载器 Java平台中,系统默认提供了三种类加载器:Bootstrap ClassLoader、Extension ClassLoader和AppClassLoader,这些类加载器会按照固定的顺序依次加载类。 自定义类加载器,是指程序员自己编写的类加载器,用于满足特定的需求,例如…

    Java 2023年6月15日
    00
  • SpringBoot自动配置实现的详细步骤

    Spring Boot自动配置是Spring Boot框架的核心特性之一,它可以帮助开发人员快速构建应用程序,减少了很多繁琐的配置工作。在本文中,我们将详细讲解Spring Boot自动配置实现的详细步骤。 Spring Boot自动配置实现的详细步骤 Spring Boot自动配置实现的详细步骤如下: Spring Boot启动时,会扫描classpath…

    Java 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部