1、简单结构图:

2、添加起步依赖,pom.xml文件参考如下:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.5.0</version>
</parent>
<groupId>com.cyq</groupId>
<artifactId>springboot-thymeleaf</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
</dependencies>
</project>
3、application.yml文件:
spring:
thymeleaf:
#前缀
prefix: classpath:templates/
#后缀
suffix: .html
#模板编码
encoding: UTF-8
#应用于模板的模板模式
mode: HTML5
#开启thymeleaf缓存
cache: true
#检查模板位置是否存在
check-template-location: true
其实默认的前缀、后缀、模板模式跟我们定义的一致,所以不要application.yml文件也可:
ps:thymeleaf常用配置说明,参考博客:https://www.cnblogs.com/kingsonfu/p/10390678.html
#spring.thymeleaf.cache = true #启用模板缓存。 #spring.thymeleaf.check-template = true #在呈现模板之前检查模板是否存在。 #spring.thymeleaf.check-template-location = true #检查模板位置是否存在。 #spring.thymeleaf.content-type = text / html #Content-Type值。 #spring.thymeleaf.enabled = true #启用MVC Thymeleaf视图分辨率。 #spring.thymeleaf.encoding = UTF-8 #模板编码。 #spring.thymeleaf.excluded-view-names = #应该从解决方案中排除的视图名称的逗号分隔列表。 #spring.thymeleaf.mode = HTML5 #应用于模板的模板模式。另请参见StandardTemplateModeHandlers。 #spring.thymeleaf.prefix = classpath:/ templates / #在构建URL时预先查看名称的前缀。 #spring.thymeleaf.suffix = .html #构建URL时附加到查看名称的后缀。 #spring.thymeleaf.template-resolver-order = #链中模板解析器的顺序。 #spring.thymeleaf.view-names = #可以解析的视图名称的逗号分隔列表。/ templates / #在构建URL时先查看名称的前缀。 #spring.thymeleaf.suffix = .html #构建URL时附加到查看名称的后缀。 #spring.thymeleaf.template-resolver-order = #链中模板解析器的顺序。 #spring.thymeleaf.view-names = #可以解析的视图名称的逗号分隔列表。/ templates / #在构建URL时先查看名称的前缀。 #spring.thymeleaf.suffix = .html #构建URL时附加到查看名称的后缀。 #spring.thymeleaf.template-resolver-order = #链中模板解析器的顺序。 #spring.thymeleaf.view-names = #可以解析的视图名称的逗号分隔列表。
4、创建启动类MyApplication文件:
package com.cyq;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class MyApplication {
public static void main(String[] args) {
SpringApplication.run(MyApplication.class,args);
}
}
5、创建html页面(thymeleaf.html):
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.w3.org/1999/xhtml">
<head>
<meta charset="UTF-8">
<title>Thymeleaf</title>
</head>
<body>
<h1 th:text="${username}"></h1>
</body>
</html>
6、ThymeleafController文件:
package com.cyq.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
//RequestMapping
//这里要用Controller,因为RequestMapping不经过视图解析器。
@Controller
@RequestMapping("/test")
public class ThymeleafController {
@RequestMapping("/getUserName")
public Object getUser(Model model){
String username="zhangsan";
model.addAttribute("username",username);
return "thymeleaf";
}
}
7、测试:
http://localhost:8080/test/getUserName
