一. Thymeleaf 的介绍
Thymeleaf 是适用于 Web 和独立环境的现代服务器端 Java 模板引擎,
能够处理 HTML,XML,JavaScript,CSS 甚至纯文本。
Thymeleaf 的主要目标是提供一种优雅且高度可维护的模板创建方式。
为此,它以“自然模板”的概念为基础,以不影响模板用作设计原型的方式将其逻辑注入模板文件。
这样可以改善设计沟通,并缩小设计团队与开发团队之间的差距。
关于Thymeleaf 的详细介绍,可以访问: https://www.docs4dev.com/docs/zh/thymeleaf/3.0/reference/using_thymeleaf.html
进行学习。
二. SpringBoot 整合 Thymeleaf
按照 SpringBoot 整合 BootStrap 的Maven方式创建相应的项目。
将模板 html 文件放置在 resources/templates 目录下
二.一 pom.xml 中添加依赖
在原先依赖的基础上,添加 spring-boot-starter-thymeleaf 的依赖
<!--引入 spring-boot-starter-thymeleaf的依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency>
二.二 application.yml 配置 thymeleaf的相关属性
spring: # 配置thymeleaf的相关信息 thymeleaf: # 开启视图解析 enabled: true #编码格式 encoding: UTF-8 #前缀配置 prefix: classpath:/templates/ # 后缀配置 suffix: .html #是否使用缓存 开发环境时不设置缓存 cache: false # 格式为 HTML 格式 mode: HTML5 # 配置类型 servlet: content-type: text/html
二.三 配置静态资源映射
@Configuration public class WebConfig extends WebMvcConfigurerAdapter { /** * 配置静态的资源信息 * @param registry */ @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("doc.html").addResourceLocations("classpath:/META-INF/resources/"); registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/"); //映射 static 目录 registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/"); //放置其他 业务页面资源 registry.addResourceHandler("/**").addResourceLocations("classpath:/templates/"); } }
二.四 UserController 响应控制器
/** * @ClassName:InfoController * @Description 整合Thymeleaf所使用的Controller * @Author yjl * @Date 2021/6/15 10:55 * @Version 1.0 **/ @Controller public class InfoController { }
注意,使用是 @Controller, 并不是 @RestController
二.五 User.java 实体类
@Data public class User { private Integer id; private String name; private Integer sex; private Integer age; private String description; }