Spring Boot整合Thymeleaf模板引擎


分享一份 2020 年最新面试题资料!

什么是Thymeleaf

Thymeleaf是一款用于渲染XML、XHTML、HTML5内容的模板引擎。类似Velocity,FreeMaker模板引擎,它也可以轻易的与Spring MVC等Web框架进行集成作为Web应用的模板引擎。

Thymeleaf也是Spring Boot首要支持的模板引擎,并且在最新的Spring Boot版本中已经不再支持Velocity了。

官网:http://www.thymeleaf.org/

引入依赖

需要引入Spring Boot的Thymeleaf启动器依赖。

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

引入该依赖后会自动引入web依赖,不需要再单独引入web依赖。

自动配置说明

下面是Thymeleaf的自动配置相关类。

Thymeleaf的自动配置类:

org.springframework.boot.autoconfigure.thymeleaf.ThymeleafAutoConfiguration

Thymeleaf的自动配置参数类:

org.springframework.boot.autoconfigure.thymeleaf.ThymeleafProperties

查看参数源码:

private static final Charset DEFAULT_ENCODING = Charset.forName("UTF-8");

private static final MimeType DEFAULT_CONTENT_TYPE = MimeType.valueOf("text/html");

public static final String DEFAULT_PREFIX = "classpath:/templates/";

public static final String DEFAULT_SUFFIX = ".html";

默认的编码是:UTF-8

默认的类型是:text/html

默认的模板文件目录是:classpath:/templates/

默认的模板文件后缀是:.html

这些参数都可以通过在application配置文件中指定spring.thymeleaf.xx进行更改,更多可参考该参数类。

实战

知道了自动配置的原理,所以我们可以知道怎么做了。

一、在resources目录下创建templates目录。

二、在templates目录下创建.html模板文件。

三、使用模板:

1、模板文件头部使用<html xmlns:th="http://www.thymeleaf.org">定义。

2、html标签上使用th:开头标识作为前缀。

3、通过@{}引入web静态文件。

<link rel="stylesheet" th:href="@{/css/jquery.min.css}"/>

4、访问数据

访问springmvc中的model数据:${user.name},访问更多不同对象的数据请点击参考官方定义。

好了,今天的分享就到这里,更多 Spring Boot 文章正在撰写中,关注Java技术栈微信公众号获取第一时间推送。

在公众号后台回复:boot,还能获取栈长整理的往期 Spring Boot 教程,都是实战干货,以下仅为部分预览。

  • Spring Boot 读取配置的几种方式
  • Spring Boot 如何做参数校验?
  • Spring Boot 最核心的 25 个注解!
  • Spring Boot 2.x 启动全过程源码分析
  • Spring Boot 2.x 新特性总结及迁移指南
  • ……

本文原创首发于微信公众号:Java技术栈(id:javastack),转载请原样保留本信息。

分享一份 2020 年架构师学习资料!