SpringBoot下的模板技術Thymeleaf詳解

千鋒武漢發表於2021-03-26

Thymeleaf是一個流行的模板引擎,該模板引擎採用Java語言開發;

模板引擎是一個技術名詞,是跨領域跨平臺的概念,在Java語言體系下有模板引擎,在C#、PHP語言體系下也有模板引擎,在JavaScript中也會用到模板引擎技術;

Java生態下的模板引擎有 Thymeleaf 、Freemaker、Velocity、Beetl(國產) 等;

Thymeleaf 它是基於HTML的,Thymeleaf模板本身也是一個html頁面,Thymeleaf 要寄託在HTML的標籤下實現對資料的展示;

Spring boot 整合了thymeleaf模板技術,並且spring boot官方也推薦使用thymeleaf來替代JSP技術;

Thymeleaf是另外的一種模板技術,它本身並不屬於SpringBoot,SpringBoot只是很好地整合這種模板技術,作為前端頁面的資料展示;

Thymeleaf旨在提供⼀個優雅的、⾼度可維護的建立模板的⽅式,為了實現這⼀⽬標,Thymeleaf建⽴在⾃然模板的概念上,將其邏輯注⼊到模板⽂件中,不會影響模板設計原型。 這改善了設計的溝通,彌合了設計和開發團隊之間的差距。

對於Spring框架模組,一個允許你整合你最喜歡的工具的平臺,並且能夠插入自己的功能,Thymeleaf是理想的現代JVM HTML5 web開發工具,雖然它可以做得多。

簡單說, Thymeleaf 是一個跟 Velocity、FreeMarker 類似的模板引擎,它可以完全替代 JSP。

Thymeleaf與JSP的區別在於,不執行專案之前,Thymeleaf也是HTML(不需要服務端的支援)而JSP需要進行一定的轉換,這樣就方便前端人員進行獨立的設計、除錯。相較與其他的模板引擎,它有如下三個極吸引人的特點:

1)Thymeleaf 在有網路和無網路的環境下皆可執行,即它可以讓美工在瀏覽器檢視頁面的靜態效果,也可以讓程式設計師在伺服器檢視帶資料的動態頁面效果。這是由於它支援 html 原型,然後在 html 標籤裡增加額外的屬性來達到模板+資料的展示方式。瀏覽器解釋 html 時會忽略未定義的標籤屬性,所以 thymeleaf 的模板可以靜態地執行,當有資料返回到頁面時,Thymeleaf 標籤會動態地替換掉靜態內容,使頁面動態顯示。

2)Thymeleaf 開箱即用的特性。它提供標準和spring標準兩種方言,可以直接套用模板實現JSTL、 OGNL表示式效果,避免每天套模板、修改jstl、標籤的困擾,同時開發人員也可以擴充套件和建立自定義的方言。

3)Thymeleaf 提供spring標準方言和一個與 SpringMVC 完美整合的可選模組,可以快速的實現表單繫結、屬性編輯器、國際化等功能。

4)Thymeleaf可以實現與jsp完全一樣的功能;


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31548651/viewspace-2765031/,如需轉載,請註明出處,否則將追究法律責任。

相關文章