更新時間:2019-02-13 10:00 來源:動力節(jié)點 瀏覽13935次
Thymeleaf是一個流行的模板引擎,該模板引擎采用Java語言開發(fā);

模板引擎是一個技術(shù)名詞,是跨領(lǐng)域跨平臺的概念,在Java語言體系下有模板引擎,在C#、PHP語言體系下也有模板引擎,在JavaScript中也會用到模板引擎技術(shù);
Java生態(tài)下的模板引擎有 Thymeleaf 、Freemaker、Velocity、Beetl(國產(chǎn)) 等;
Thymeleaf 它是基于HTML的,Thymeleaf模板本身也是一個html頁面,Thymeleaf 要寄托在HTML的標(biāo)簽下實現(xiàn)對數(shù)據(jù)的展示;
Spring boot 集成了thymeleaf模板技術(shù),并且spring boot官方也推薦使用thymeleaf來替代JSP技術(shù);
Thymeleaf是另外的一種模板技術(shù),它本身并不屬于SpringBoot,SpringBoot只是很好地集成這種模板技術(shù),作為前端頁面的數(shù)據(jù)展示;
Thymeleaf旨在提供?個優(yōu)雅的、?度可維護的創(chuàng)建模板的?式,為了實現(xiàn)這??標(biāo),Thymeleaf建?在?然模板的概念上,將其邏輯注?到模板?件中,不會影響模板設(shè)計原型。 這改善了設(shè)計的溝通,彌合了設(shè)計和開發(fā)團隊之間的差距。

對于Spring框架模塊,一個允許你集成你最喜歡的工具的平臺,并且能夠插入自己的功能,Thymeleaf是理想的現(xiàn)代JVM HTML5 web開發(fā)工具,雖然它可以做得多。
簡單說, Thymeleaf 是一個跟 Velocity、FreeMarker 類似的模板引擎,它可以完全替代 JSP。
Thymeleaf與JSP的區(qū)別在于,不運行項目之前,Thymeleaf也是純HTML(不需要服務(wù)端的支持)而JSP需要進行一定的轉(zhuǎn)換,這樣就方便前端人員進行獨立的設(shè)計、調(diào)試。相較與其他的模板引擎,它有如下三個極吸引人的特點:
1)Thymeleaf 在有網(wǎng)絡(luò)和無網(wǎng)絡(luò)的環(huán)境下皆可運行,即它可以讓美工在瀏覽器查看頁面的靜態(tài)效果,也可以讓程序員在服務(wù)器查看帶數(shù)據(jù)的動態(tài)頁面效果。這是由于它支持 html 原型,然后在 html 標(biāo)簽里增加額外的屬性來達到模板+數(shù)據(jù)的展示方式。瀏覽器解釋 html 時會忽略未定義的標(biāo)簽屬性,所以 thymeleaf 的模板可以靜態(tài)地運行,當(dāng)有數(shù)據(jù)返回到頁面時,Thymeleaf 標(biāo)簽會動態(tài)地替換掉靜態(tài)內(nèi)容,使頁面動態(tài)顯示。
2)Thymeleaf 開箱即用的特性。它提供標(biāo)準(zhǔn)和spring標(biāo)準(zhǔn)兩種方言,可以直接套用模板實現(xiàn)JSTL、 OGNL表達式效果,避免每天套模板、修改jstl、標(biāo)簽的困擾,同時開發(fā)人員也可以擴展和創(chuàng)建自定義的方言。
3)Thymeleaf 提供spring標(biāo)準(zhǔn)方言和一個與 SpringMVC 完美集成的可選模塊,可以快速的實現(xiàn)表單綁定、屬性編輯器、國際化等功能。
4)Thymeleaf可以實現(xiàn)與jsp完全一樣的功能;
高薪課程推薦:SpringBoot框架從入門到實踐