欢迎光临散文网 会员登陆 & 注册

现在主流的Thymeleaf模板引擎到底有多好用?

2021-05-17 10:58 作者:动力节点小王本王  | 我要投稿



通常开发我们都会使用模板引擎,比如:JSP、Velocity、Freemarker、Thymeleaf等等很多,那么模板引擎是干嘛用的?

模板引擎,顾名思义,是一款模板,模板中可以动态的写入一些参数,我们将这些参数在代码中传入,以保证数据在页面的动态调用,这就是引擎要做的,页面和数据的动态传输模板。

连Springboot官方都在推荐的这款Thymeleaf模板引擎,让我们看看它到底哪里这么出彩:


Thymeleaf很容易学习与理解,并有着自己鲜明的特色,适合在后台应用,以及各种管理类系统中使用。

本课程将一步一步详解讲解Thymeleaf模板引擎技术,全面掌握Thymeleaf模板技术,并在实际项目开发中得心应手使用Thymeleaf模板技术。

视频观看,点击以下链接👇

适应人群:

有一定的Java Web开发基础,掌握SpringBoot,或者有工作经验的人群。



什么是Thymeleaf?

Thymeleaf是一种服务器端Java模板引擎,它通过在html标签中嵌入特殊的语法糖,实现双击html文件即可在浏览器中预览页面效果,又可以在服务端解析处理后渲染出动态页面;

这对于处理UI模板的前端设计人员非常友好,所见即所得。

同时对于服务器端人员来说,只需在html标签中嵌入语法糖,即可启用模板功能,渲染出动态页面,实现了前端设计人员和后端开发人员的职责分离。

Thymeleaf过程可以使用哪种模板?

开箱即用,Thymeleaf允许处理六种模板,每种模板称为模板模式:

  1. 两种标记模板模式(HTML和XML)

  2. 三种文本模板模式(TEXT,JAVASCRIPT和CSS)

  3. 一种无操作模板模式(RAW)

  • HTML

    该HTML模板模式将允许任何类型的HTML的输入,包括HTML5,HTML4和XHTML。不会执行验证或格式良好检查,并且将在输出中尽可能地尊重模板代码/结构。

  • XML

    该XML模板模式将允许XML输入。在这种情况下,代码应该是格式良好的 - 没有未封闭的标签,没有不带引号的属性等等 - 如果发现格式错误,解析器将抛出异常。请注意,不会执行验证(针对DTD或XML架构)。

  • TEXT

    该TEXT模板模式将允许非标记性质的模板使用特殊的语法。此类模板的示例可能是文本电子邮件或模板文档。请注意,HTML或XML模板也可以被处理TEXT,在这种情况下,它们不会被解析为标记,并且每个标记,DOCTYPE,注释等都将被视为纯文本。

  • JAVASCRIPT

    该JAVASCRIPT模板模式将允许在Thymeleaf应用程序的JavaScript文件的处理。这意味着能够以与HTML文件相同的方式在JavaScript文件中使用模型数据,但是使用特定于JavaScript的集成,例如专门的转义或自然脚本。该JAVASCRIPT模板模式被认为是一种文本模式,因此使用相同的特殊语法的TEXT模板模式。

  • CSS

    该CSS模板模式将允许参与Thymeleaf应用CSS文件的处理。与JAVASCRIPT模式类似,CSS模板模式也是文本模式,并使用TEXT模板模式中的特殊处理语法。

  • RAW

    该RAW模板模式将根本不处理模板。它用于将未经处理的资源(文件,URL响应等)插入到正在处理的模板中。例如,HTML格式的外部不受控制的资源可以包含在应用程序模板中,安全地知道这些资源可能包含的任何Thymeleaf代码都不会被执行。

Thymeleaf的优势

1. 以html的属性出现,保证html的完整语法结构不被破坏;

2. 浏览器可直接预览模板文件,无需服务器端支持;

3. 提供了大量内置对象,内置工具类;

4. 语法简单,学习难度低;

5. 支持html,js,raw等多种模板类型;


课程目录

001.Thymeleaf课程导读

002.thymeleaf-模板工作方式

003.thymeleaf-文档

004.thymeleaf-第一个例子

005.thymeleaf-模板使用数据

006.thymeleaf-使用模板文件

007.thymeleaf-设置模板前缀后缀

008.thymeleaf-springboot环境搭建

009.thymeleaf-测试springboot中使用模板

010.thymeleaf-变量表达式基本语法-1

011.thymeleaf-变量表达式基本语法-2

012.thymeleaf-链接表达式

013.thymeleaf-链接表达式传参数

014.thymeleaf-国际化介绍

015.thymeleaf-自定义LocalResolver

016.thymeleaf-国际化模板定义

017.thymeleaf-调式国际化

018.thymeleaf-文本表达式

019.thymeleaf-数字表达式

020.thymeleaf-布尔表达式

021.thymeleaf-null和空字符串

022.thymeleaf-逻辑表达式

023.thymeleaf-三元运算符-1

024.thymeleaf-三元运算符-2

025.thymeleaf-设置属性值

026.thymeleaf-attr设置任意属性值

027.thymeleaf-设置属性值

028.thymeleaf-同时设置多个属性值

029.thymeleaf-boolean设置

030.thymeleaf-设置标签体文本

031.thymeleaf-循环each(1)

032.thymeleaf-each循环普通Map

033.thymeleaf-each循环ListMap

034.thymeleaf-each循环数组

035.thymeleaf-each循环给Select组件添加数据

036.thymeleaf-each循环的状态变量

037.thymeleaf-if使用

038.thymeleaf-unless使用

039.thymeleaf-模版的介绍

040.thymeleaf-模版insert使用

041.thymeleaf-函数模版和当前页面中定义模版

042.thymeleaf-使用id引用模版

043.thymeleaf-replace和include的对比

044.thymeleaf-常用insert-replace

045.thymeleaf-remove删除

046.thymeleaf-remove其它的范围值

047.thymeleaf-动态指定模版名称

048.thymeleaf-inline在js中获取数据

049.thymeleaf-inline和text的比较使用

050.thymeleaf-禁用内联

051.thymeleaf-局部变量

052.thymeleaf-内置工具类

053.thymeleaf-内置工具类日期和string

054.thymeleaf-内置对象#request

055.thymeleaf-内置对象#session和#servletContext

056.thymeleaf-快捷对象param

057.thymeleaf-快捷对象session和application




现在主流的Thymeleaf模板引擎到底有多好用?的评论 (共 条)

分享到微博请遵守国家法律