龙空技术网

SpringBoot自带模板引擎Thymeleaf使用详解

架构师老卢 142

前言:

此时兄弟们对“html5spring”可能比较注意,看官们都需要了解一些“html5spring”的相关内容。那么小编也在网络上搜集了一些关于“html5spring””的相关资讯,希望各位老铁们能喜欢,大家快快来了解一下吧!

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

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

添加依赖

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

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

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

配置Thymeleaf

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

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

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

创建模板文件

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

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

<!DOCTYPE html><html xmlns:th=";><head>    <title>Welcome to my site</title></head><body>    <h1 th:text="${title}">Hello World!</h1></body></html>

在这个例子中,我们使用了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;@Controllerpublic 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模板文件。

启动应用程序并查看结果

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

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

标签: #html5spring