Thymeleaf

Thymeleaf
Developer(s) Daniel Fernández
Stable release
3.0.2[1] / September 28, 2016 (2016-09-28)
Development status Active
Written in Java
Operating system Cross-platform
Type Template Engine
License Apache License 2.0
Website www.thymeleaf.org
Standard(s) XML, XHTML, HTML5

Thymeleaf is a Java XML/XHTML/HTML5 template engine that can work both in web (Servlet-based) and non-web environments. It is better suited for serving XHTML/HTML5 at the view layer of MVC-based web applications, but it can process any XML file even in offline environments. It provides full Spring Framework integration.

In web applications Thymeleaf aims to be a complete substitute for JSP, and implements the concept of Natural Templates: template files that can be directly opened in browsers and that still display correctly as web pages.

Thymeleaf is Open-Source Software, licensed under the Apache License 2.0.

Features

From the project's website:[2]

Example

The following example produces an HTML5 table with rows for each item of a List<Product> variable called allProducts.

<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>

This piece of code includes:

Also, this fragment of (X)HTML code can be perfectly displayed by a browser as a prototype, without being executed at all: it is a natural template.

See also

References

This article is issued from Wikipedia - version of the 10/28/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.