Тимелиф
Разработчик(и) | Даниэль Фернандес |
---|---|
Стабильная версия | 3.1.1 [1] / 6 декабря 2022 г |
Написано в | Ява |
Операционная система | Кросс-платформенный |
Стандарт (ы) | XML , XHTML , HTML5 |
Тип | Шаблонизатор |
Лицензия | Лицензия Апач 2.0 |
Веб-сайт | www |
Thymeleaf — это Java XML / XHTML / HTML5 механизм шаблонов , который может работать как в веб-средах ( на основе сервлетов ), так и в не-веб-средах. Он лучше подходит для обслуживания XHTML/HTML5 на уровне представления веб-приложений на основе MVC , но может обрабатывать любой XML-файл даже в автономных средах. Он обеспечивает полную интеграцию Spring Framework .
В веб-приложениях Thymeleaf стремится стать полной заменой JavaServer Pages (JSP) и реализует концепцию естественных шаблонов : файлов шаблонов, которые можно напрямую открывать в браузерах и которые по-прежнему корректно отображаются как веб-страницы.
Thymeleaf — это программное обеспечение с открытым исходным кодом , распространяемое по лицензии Apache License 2.0 .
Функции
[ редактировать ]С сайта проекта: [2]
- Java Механизм шаблонов для XML , XHTML и HTML5 .
- Работает как в веб-, так и в не-веб- (оффлайн) средах. Нет жесткой зависимости от API сервлетов .
- Основан на модульных наборах функций, называемых диалектами .
- Функции диалекта (например, оценка, итерация и т. д.) применяются путем привязки их к тегам и/или атрибутам шаблона.
- Два готовых диалекта доступны: Standard и SpringStandard (для Spring MVC тот же синтаксис, что и у Standard). приложений
- Разработчики могут расширять и создавать собственные диалекты.
- Несколько режимов шаблона:
- Полная (и расширяемая) поддержка интернационализации .
- Настраиваемый высокопроизводительный анализируемый кэш шаблонов , который сводит к минимуму ввод/вывод.
- Автоматические переводы DOCTYPE – из DTD шаблона в DTD результата – для (необязательной) проверки как шаблона, так и кода результата.
- Чрезвычайно расширяемый: при необходимости можно использовать в качестве платформы шаблонизатора.
- Полная документация, включая несколько примеров приложений.
Пример тимелеафа
[ редактировать ]В следующем примере создается таблица HTML5 со строками для каждого элемента переменной List<Product> с именем 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>
Этот фрагмент кода включает в себя:
- Выражения интернационализации: #{ ... } rh
- Выражения оценки переменной/атрибута модели: ${ ... }
- Вспомогательные функции: #numbers.formatDecimal(...)
Также этот фрагмент (X)HTML-кода может прекрасно отображаться браузером в качестве прототипа, вообще не подвергаясь обработке: это естественный шаблон .
См. также
[ редактировать ]- Шаблонизатор (веб)
- Страницы Java-сервера
- Весенняя структура
- FreeMarker
- Скорость Апача
- Язык атрибутов шаблона
Ссылки
[ редактировать ]- ^ «Thymeleaf 3.1: что нового и как перейти — Thymeleaf» .
- ^ «Возможности — Thymeleaf: механизм шаблонов Java XML/XHTML/HTML5» . Архивировано из оригинала 8 октября 2011 г. Проверено 16 октября 2011 г. Особенности Тимелеафа