李林超博客
首页
归档
留言
友链
动态
关于
归档
留言
友链
动态
关于
首页
Java
正文
Thymeleaf简介
Leefs
2019-11-03 PM
3844℃
2条
# Thymeleaf简介 ### 一、概念 **Thymeleaf是一款用于渲染XML/XHTML/HTML5内容的模版引擎。**类似于JSP、Velocity、FreeMaker等,它可以轻易的与Spring MVC等Web框架进行集成作为Web应用9的模版引擎。 ### 二、优点 + **1.Thymeleaf在有网络和无网络的环境下都可以运行**,即它可以让美工在浏览器查看页面的静态效果,也可以让程序员在服务器查看带数据的动态页面效果。这是由于它支持html原型,然后在html标签里增加额外的属性来达到**模版+数据**的展示方式。浏览器解释html时会忽略未定义的标签属性,所以thymeleaf的模版可以静态地运行;当有数据返回到页面时,Thymeleaf标签会动态地替换掉静态内容,使页面动态显示。 + **2.Thymeleaf开箱即用的特性。**它提供标准和Spring标签两种方言,可以直接套用模版实现JSTL、OGNL表达式效果,避免每天套模版、改JSTL、改标签的困扰。同时开发人员也可以扩展和创建自定义的方言。 + **3.Thymeleaf 提供 Spring 标准方言和一个与 SpringMVC 完美集成的可选模块,可以快速的实现表单绑定、属性编辑器、国际化等功能。** ### 三、模版引擎概述 Thymeleaf是一种模版语言。常见的模版语言包含以下几个概念:数据(Data)、模版(Template)、模版引擎(Template Engine)和结果文档(Result Documents). #### 数据 数据是信息的表现形式和载体,可以是符号、文字、数字、语音、图像、视频等。数据和信息是不可分离的,数据是信息的表达,信息是数据的内涵。数据本身没有意义,数据只有对实体行为产生影响时才成为信息。 #### 模版 模版是一个蓝图,即一个与类型无关的类。编译器在使用模版时,会根据模版实参对模版进行实例化,得到一个与类型相关的类。 #### 模版引擎 模版引擎(这里特指用于Web开发的模版引擎)是为了使用户界面与业务数据(内容)分离而产生的,它可以生成特定格式的文档,用于网站的模版引擎就会生成一个标准的HTML文档。 #### 结果文档 一种特定格式的文档,比如用于网站的模版引擎就会生成一个标准的HTML文档。 #### 模版语言用途 + 1.页面渲染 + 2.文档生成 + 3.代码生成 + 4.“**数据+模版=文本**”的应用场景 ### 四、常见问题 **问题1:Thymeleaf与JSP的区别?** Thymeleaf是以HTML文件为基础,添加标签完成“数据+模版=文本”的过程,而JSP需要将JSP文件编译成为.class文件才能够执行,JSP是一种Java servlet。 **问题2:Thymeleaf如何替换模版和数据?** 模版引擎可以让程序实现界面与数据分离,业务代码与逻辑代码的分离,这就提升了开发效率,良好的设计也使得代码复用变得更加容易。 *符:[参考文章1](https://www.jianshu.com/p/2c28f7f48143)、[参考文章2](http://www.360doc.com/content/19/0220/11/54252913_816267603.shtml)*
标签:
Java
,
Thymeleaf
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:
https://lilinchao.com/archives/122.html
上一篇
访问权限控制简介
下一篇
SpringBoot整合Thymeleaf
评论已关闭
栏目分类
随笔
2
Java
326
大数据
229
工具
31
其它
25
GO
47
NLP
4
标签云
国产数据库改造
排序
Docker
容器深入研究
Spark Streaming
Scala
ajax
Nacos
栈
Netty
Jenkins
持有对象
BurpSuite
Hive
Java编程思想
Jquery
前端
链表
Python
Stream流
Spring
人工智能
RSA加解密
Map
MyBatis
Spark RDD
CentOS
Quartz
MyBatis-Plus
机器学习
友情链接
申请
范明明
庄严博客
Mx
陶小桃Blog
虫洞
评论已关闭