Thymeleaf

維基百科,自由的百科全書
跳至導覽 跳至搜尋
Thymeleaf
File:Thymeleaf Logo with name small.png
開發者Daniel Fernández
目前版本3.0.11[1](2018年10月29日 (2018-10-29)
原始碼庫
  • {{URL|example.com|可选的显示文本}}
Module:EditAtWikidata第29行Lua錯誤:attempt to index field 'wikibase' (a nil value)
程式語言Java
引擎
    Module:EditAtWikidata第29行Lua錯誤:attempt to index field 'wikibase' (a nil value)
    作業系統Cross-platform
    標準XML, XHTML, HTML5
    類型Template Engine
    許可協定Apache License 2.0
    網站www.thymeleaf.org

    Thymeleaf是一個Java XML / XHTML / HTML5 模板引擎 ,可以在Web(基於servlet )和非Web環境中工作。它更適合在基於MVC的Web應用程式的視圖層提供XHTML / HTML5,但它甚至可以在離線環境中處理任何XML檔案。它提供完整的Spring Framework

    在Web應用程式中,Thymeleaf旨在成為JavaServer Pages(JSP)的完全替代品,並實現自然模板的概念:模板檔案可以直接在瀏覽器中打開,並且仍然可以正確顯示為網頁。

    Thymeleaf是 開源軟件、許可下 Apache許可證2.0

    功能[編輯]

    從該專案的網站:[2]

    • 用於XMLXHTMLHTML5的 Java 模板引擎 。
    • 適用於Web和非Web(離線)環境。 沒有硬依賴Servlet API。
    • 基於稱為方言的模組化特徵集。
      • 方言特徵(例如:評估,迭代等)通過將它們連結到模板的標籤和/或屬性來應用。
      • 開箱即用的兩種方言:Standard和SpringStandard(適用於Spring MVC應用程式,與標準語法相同)。
      • 開發人員可以擴充和建立自訂方言。
    • 幾種模板模式:
      • XML :驗證DTD與否。
      • XHTML 1.0和1.1 :是否針對標準DTD進行驗證。
      • HTML5 :XML格式的代碼和基於遺留的HTML5。 傳統的非XML代碼將自動清理並轉換為XML格式。
    • 完整(和可延伸)的國際化支援。
    • 可組態的高效能解析模板快取 ,可將輸入/輸出降至最低。
    • 自動DOCTYPE轉換 - 從模板DTD到結果DTD-用於(可選)驗證模板和結果代碼。
    • 極易擴充:如果需要,可以用作模板引擎框架。
    • 完整的文件,包括幾個範例應用

    Thymeleaf的例子[編輯]

    下面的例子產生一個HTML5表的行為每個專案的一個 列表<產品> 變量 所有產品.

    <table>
      <thead>
        <tr>
          <th th:text="#{msgs.headers.name}">Name</th>
          <th th:text="#{msgs.headers.price}">Price</th>
        </tr>
      </thead>
      <tbody>
        <tr th:each="prod : ${allProducts}">
          <td th:text="${prod.name}">Oranges</td>
          <td th:text="${#numbers.formatDecimal(prod.price,1,2)}">0.99</td>
        </tr>
      </tbody>
    </table>
    

    這段代碼包括:

    • 國際化表現形式: #{...}rh
    • 變量/模型的屬性評估表: ${的。中。中。 }
    • 實用功能: #數字。formatDecimal(中。中。中。 )

    此外,這個片段(X)HTML代碼可以被完全顯示通過瀏覽器作為一個原型,沒有正在進行處理:它是一個 自然的模板中。

    參見[編輯]

    參考文獻[編輯]

    1. ^ http://forum.thymeleaf.org/Thymeleaf-3-0-11-JUST-PUBLISHED-td4031356.html頁面存檔備份,存於互聯網檔案館) Release announcement
    2. ^ Archived copy. [2011-10-16]. (原始內容存檔於2011-10-08). 

    外部連結[編輯]