5.1 Thymeleaf 入门

第5章 Thymeleaf 模板引擎

5.1 Thymeleaf 入门
5.2 Thymeleaf 表达式
5.3 Thymeleaf 表达式的语法
5.4 Thymeleaf 的高级用法
5.5 Thymeleaf 页面布局

5.1 Thymeleaf 入门

5.1.1 Thymeleaf 简介

Thymeleaf 是一款非常优秀的服务器端页面模板引擎,使用于 Web 和独立环境,具有丰富的标签语言和函数,能够处理 HTML、XML、JavaScript 甚至文本。

1、Thymeleaf 的实现机制

模板的诞生是为了将显示与数据分离,模板技术多种多样,本质是将模板文件数据通过模板引擎生成最终的HTML代码

Thymeleaf 亦是如此。Thymeleaf将其逻辑注入模板控件中,而不会影响模板设计原型,所以可以在浏览器中正确显示HTML页面和数据,也可以在无后台时静态显示。

2、Thymeleaf 的优点

Thymeleaf 与 Velocity、FreeMarker 等模板引擎类似,可以完全替代 JSP。与其他的模板引擎相比,Thymeleaf 具有如下优点:

(1)动静结合
Thymeleaf 页面采用模板+数据的展示方式,既可以展示静态页面,也可以展示数据返回到页面后的动态效果。这是因为 Thymeleaf 支持 HTML 原型,可以在 HTML 原型上添加额外的属性,浏览器在解释 HTML 时会忽视未定义的属性,当定义的属性带数据时就会动态替换静态内容,实现页面动态展示。

(2)开箱即用
Thymeleaf 提供标准方言和 Spring 方言,可以直接套用模板实现 JSTL、OGNL 表达式效果,避免套模板、改JSTL、改标签的困扰。同时,开发人员也可以扩展和创建自定义的方言。

(3)多方言支持
Thymeleaf 提供 Spring 标准方言和一个与 Spring MVC 完美集成的可选模块,可以快速地实现表单绑定、属性编辑器、国际化等功能。

(4)与 Spring Boot 完美结合
Spring Boot 提供了 Thymeleaf 的默认配置,并且为 Thymeleaf 设置了视图解析器,可以像操作 JSP 一样来操作 Thymeleaf。代码几乎没有任何区别,仅在模板语言上有所区别。

Spring Boot 官方推荐使用 Thymeleaf 作为前端页面模板,Spring Boot 2.0 中默认使用 Thymeleaf 3.0。同时 Spring Boot 也为 Thymeleaf 提供了 spring-boot-starter-thymeleaf 组件(继承了 Thymeleaf 模板引擎),还支持 Thymeleaf 自动装配,可以开箱即用。

5.1.2 Spring Boot 使用 Thymeleaf

Spring Boot 对 Thymeleaf 提供了非常完整的支持,使得我们使用 Thymeleaf 非常简单,只需要引入 spring-boot-starter-thymeleaf 依赖库即可。下面通过一个简单的例子来演示 Spring Boot 是如何集成 Thymeleaf 的。

0、项目结构图

在这里插入图片描述

1、引入相关依赖包

在新建的Spring Boot 项目中,引入下列两个依赖包:

  • Web开发:spring-boot-starter-web
  • Thymeleaf模板引擎:spring-boot-starter-thymeleaf

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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值