对Thymeleaf的一些笼统介绍和理解
(随手记录的,,可能没那么易看,sorry le)
先大概介绍一下关于Thymeleaf的概念和理解:首先Thymeleaf模板引擎(换句话说他是现代服务器端的Java模板引擎,)
他所对应的主要作用(因为也是刚刚了接所以可能不会介绍的很周全),其实无非也就和之前所对应的jsp的作用方式是类似的,
因为jsp在某种程度上也是一种所对应的模板引擎,而jsp和Thymeleaf不同的地方,在某种程度上也就是,jsp对一些事物支持力度不高,
如HTML5的一些属性在jsp中是不能正常使用的,二,也就是jsp所对应的前后端分离的程度不够高,因为相信所有人也都知道,
jsp的设置初衷,或者jsp的设计原理是需要追述为servlet时代的,而jsp的出现在当时也的确是很实用的页面显示方式
(我觉得是这样的,O(∩_∩)O~~),所以jsp并非是直接支持html的语法格式的等等,jsp在生成的过程当中会生成为所对应的servlet类
,然后servlet中利用response等特定将所对应的标签等进行输出,如:response.getWrite().write().等等,,所以仅以此进行比较的话,
那么的确在前后端的数据显示分离上,的确是没有现在的一些大多数的后端引擎效果好些,相比对于如:jsp页面不能直接进行浏览器展示
,一定要与服务器进行配合才能展示数据等,而Thymeleaf呢则是可以直接打开html文件,进行前端的效果查看啊等等,
(其实从他们两个的实现原理上来说的话,一些优缺点阿等等,其实是完全没有对比性的,我觉得。。哈哈
,因为设计方式和设计初衷wo觉得其实也是不一样的,jsp的设计初衷是为了可以和后端所对应的作用域的数据bean等等进行数据显示和输出
,在设计之初我觉得这已经是很节省开发时间和成本的问题了吧,当时对于前后端使用json进行数据传输,也不知道流行没有,。。
而Thymeleaf的设计初衷出了解决数据bean的显示等问题外,对于html也有很好的支持),然后再简单提一下Thymeleaf的解析方式,
其实对于Thymeleaf的一些作用上述的话也简单提到了和jsp的一些作用是类似的,所以Thymeleaf的解决方式也是实现作用域中的bean的数据展示
,逻辑判断,以及循环等简单作用,除此之外还有类似于jsp的include的包含等功能,在Thymeleaf中又叫做(模板的定义和模板的引用)等,
(对于Thymeleaf的一些使用语法和方式等,可能会在后续学习记忆中重新再整理等,除了对于数据的解析等方式之外,)
Thymeleaf 除了所对应的应支持的作用外,不同于其余引擎的地方则是,Thymeleaf对html的支持则是十分良好的,
Thymeleaf的语法是在html上直接书写的,(旁边好吵.........)对于前后端数据分离效果较好,即对于前段的html页面可以直接打开显示前台内容
,当和服务器进行交接后所对应的th标签接收的内容则将会所对应的html标签内容替换,这点的话对于前后端的数据分离支持较好
,而jsp的话默认情况下在浏览器打开可能就是没有一点效果的,这点不多做解释了(*^__^*) ...除此之外呢,
要提到的就是JSP是基于servet进行数据解析转换形成的html,而!Thymeleaf则是将所对应的指定显示文件以DOM的形式读取为xml等并进行数据的
解析和赋值后再重新映射到浏览器的,所以Thymeleaf对于Html页面的标签等如</>闭合标签等的要求较为严格,
并且对与HTML页面较为复杂的情况使用Thymeleaf作为模板引擎则将会消耗较大的jvm内存空间
(理论上的确是将会消耗过多的JVM的内存空间吧~理论上应该的确是的~~哈哈)
所以对于较复杂的HTML页面的情况使用Thymeleaf作为模板引擎的话,官方介绍似乎是并不希望这样去做,
那么可能所对应的一系列问题可能也就迎刃而解了,比如什么将可能会造成堆内存异常,溢出,渲染速度性能降低了等等。
当然对于Thymeleaf也有很多好用的功能,除了上述所提到的以外还包含表单验证了,等等,
以及网上也有很大拿Thymeleaf和beetl等做性能对比的测试,这一点就不多作评论了,,哈哈
睡觉~lou喽先
对Thymeleaf的一些笼统介绍和理解的更多相关文章
- SOA架构介绍和理解
SOA架构介绍和理解 SOA的正确方法论及目标模型,其实SOA在实现架构落地上,需要考虑到对服务的组合,不断的重用现有的服务,让企业应用可以逐步集成,快速实现业务的迭代. 通过SOA架构分层将服务按照 ...
- python scrapy爬虫框架概念介绍(个人理解总结为一张图)
python的scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架 python和scrapy的安装就不介绍了,资料很多 这里我个人总结一下,能更加快理解scrapy和快速上手一个简 ...
- 监控摄像机常识:宽动态 (WDR)介绍和理解
安装和使用监控摄像机经常会遇到强光问题. 因为我们不可能灵活选择摄像机的安装位置, 解决或者处理强光是一个无法避免的问题. 不管是由反光材质或者灯源造成此反光, 解决问题的方案来自于摄像机支持的一个特 ...
- Thymeleaf的模板使用介绍
参考网址: https://blog.csdn.net/hry2015/article/details/73476973 先定义一个html文件, 如下: 文件路径: templates/templa ...
- S2SH简单介绍和理解
struts2简介 Struts2是由WebWork基础上发展起来的,与struts1比较,选用struts2的理由是:①Struts1要求Action类继承一个抽象基类,而Struts2Action ...
- js面向对象的笼统介绍
**js进阶大纲**简单的表面组成:**对象的属性分两类,一类是数据属性,一类是访问器属性**1,数据属性用来保存数据.2,访问器属性不用来保存数据,而是定义了get,set两个函数,读取属性时,自动 ...
- 深入理解 Java 内存模型(一)- 内存模型介绍
深入理解 Java 内存模型(一)- 内存模型介绍 深入理解 Java 内存模型(二)- happens-before 规则 深入理解 Java 内存模型(三)- volatile 语义 深入理解 J ...
- 深入理解NIO(一)—— NIO的简单使用及其三大组件介绍
深入理解NIO(一)—— NIO的简单使用及其三大组件介绍 深入理解NIO系列分为四个部分 第一个部分也就是本节为NIO的简单使用(我很少写这种新手教程,所以如果你是复习还好,应该不难理解这篇,但如果 ...
- C#基础知识之理解HTTP协议
在互联网时代HTTP协议的重要性无需多言,对于技术岗位的同学们来说理解掌握HTTP协议是必须的.本篇博客就从HTTP协议的演进.特性.重要知识点和工作中常见问题的总结等方面进行简单的介绍.理解掌握了这 ...
随机推荐
- CentOS 7.x升级内核
第一种针对当前内核版本的小版本升级可以采用如下方法: [root@localhost ~]# uname -r -.el7 [root@localhost ~]# yum list kernel [r ...
- memcache学习
1.memcache和memcached区别 Memcache是该系统的项目名称,Memcached是该系统的主程序文件(字母d可以理解为daemon),以守护程序方式运行于一个或多个服务器中,随时接 ...
- SQL Server插入中文数据出现乱码问题
我在用sql server存储数据的时候发现中文全变成了问号,我知道中文是特殊的编码.所以在数据库设计的时候包含中文的字段就是nvarchar,但是还是成了问号 好了,不多说了,解决方案如下: 在存储 ...
- HDU4576 Robot(概率)
题意 抄袭自https://www.cnblogs.com/Paul-Guderian/p/7624039.html 多组输入n,m,l,r.表示在一个环上有n个格子.接下来输入m个w表示连续的一段 ...
- arcgis jsapi接口入门系列(7):鼠标在地图画线
初始化,每个map执行一次就行 drawPolylineInit: function () { //画几何对象初始化 //新建一个图形图层用于存放画图过程中的图形 let layer = new th ...
- Oracle汇总
1.数据库事务并发会产生那些问题?有哪些隔离级别,分别能够避免什么错误,而无法避免什么错误? a.事务并发会导致三种问题:脏读.不可重复读.幻象读 脏读:读取了未提交的数据 不可重复读:前后读取同一行 ...
- COGS 133. [USACO Mar08] 牛跑步
★★★ 输入文件:cowjog.in 输出文件:cowjog.out 简单对比时间限制:1 s 内存限制:128 MB Bessie准备用从牛棚跑到池塘的方法来锻炼. 但是因为她懒,她 ...
- 洛谷 P1926 小书童——刷题大军
题目背景 数学是火,点亮物理的灯:物理是灯,照亮化学的路:化学是路,通向生物的坑:生物是坑,埋葬学理的人. 文言是火,点亮历史宫灯:历史是灯,照亮社会之路:社会是路,通向哲学大坑:哲学是坑,埋葬文科生 ...
- CSAPP lab1 datalab-handout
这是一个关于机器级的整数.浮点数表示和位运算的实验.要求用给定的操作符.尽可能少的操作数去实现对应的函数功能. 完整的实验包:链接: https://pan.baidu.com/s/1xUBi3XDl ...
- win10文件共享的实现
1)启动网络发现 打开网络共享中心->更改高级共享设置->修改如下 2)如果需要其他客户端无密码访问 修改如下: 3)如果打算使用Guest访问 用户帐户->管理帐户 ...