Thymeleaf является Java XML / XHTML / HTML5 шаблон двигатель , который может работать как в сети ( сервлет основанное) и не-веб - среде. Он лучше подходит для обслуживания XHTML / HTML5 на уровне представления веб-приложений на основе MVC , но он может обрабатывать любой XML-файл даже в автономных средах. Он обеспечивает полную интеграцию с Spring Framework .
Разработчики) | Даниэль Фернандес |
---|---|
Стабильный выпуск | 3.0.12 [1] / 21 декабря 2020 г . |
Написано в | Ява |
Операционная система | Кроссплатформенность |
Стандарт (ы) | XML , XHTML , HTML5 |
Тип | Движок шаблонов |
Лицензия | Лицензия Apache 2.0 |
Веб-сайт | www |
В веб-приложениях Thymeleaf стремится полностью заменить JavaServer Pages (JSP) и реализует концепцию Natural Templates : файлы шаблонов, которые можно напрямую открывать в браузерах и которые по-прежнему правильно отображаются как веб-страницы.
Thymeleaf - это программное обеспечение с открытым исходным кодом , работающее под лицензией Apache License 2.0 .
Функции
С сайта проекта: [2]
- Механизм шаблонов Java для XML , XHTML и HTML5 .
- Работает как в веб-средах, так и не в Интернете (оффлайн). Нет жесткой зависимости от API сервлетов .
- На основе модульных наборов функций, называемых диалектами .
- Функции диалекта (например, оценка, итерация и т. Д.) Применяются путем связывания их с тегами и / или атрибутами шаблона.
- Из коробки доступны два диалекта: Standard и SpringStandard (для приложений Spring MVC синтаксис тот же, что и у Standard).
- Разработчики могут расширять и создавать собственные диалекты.
- Несколько режимов шаблона:
- Полная (и расширяемая) поддержка интернационализации .
- Настраиваемый, высокопроизводительный кэш анализируемых шаблонов, который сводит к минимуму ввод / вывод.
- Автоматические переводы DOCTYPE - из шаблона DTD в результирующий DTD - для (необязательной) проверки как шаблона, так и кода результата.
- Чрезвычайно расширяемый: при необходимости может использоваться в качестве структуры шаблонизатора.
- Полная документация, включая несколько примеров приложений.
Пример тимелиста
В следующем примере создается таблица HTML5 со строками для каждого элемента переменной List
< table > < thead > < tr > < th th: text = "# {msgs.headers.name}" > Имя th > < th th: text = "# {msgs.headers.price}" > Цена < / th > tr > thead > < tbody > < tr th: each = "prod: $ {allProducts}" > < td th: text = "$ {prod.name}" > Апельсины td > < td th: text = "$ {# numbers.formatDecimal (prod.price, 1,2)}" > 0,99 td > tr > tbody > table >
Этот фрагмент кода включает:
- Выражения интернационализации: # {...} rh
- Выражения оценки переменных / атрибутов модели: $ {...}
- Служебные функции: # numbers.formatDecimal (...)
Кроме того, этот фрагмент (X) HTML-кода может быть отлично отображен браузером в качестве прототипа без какой-либо обработки: это естественный шаблон .
Смотрите также
Рекомендации
- ^ https://www.thymeleaf.org/releasenotes.html#thymeleaf-3.0.12 Примечания к выпуску
- ^ "Архивная копия" . Архивировано из оригинала на 2011-10-08 . Проверено 16 октября 2011 . CS1 maint: не рекомендуется параметр ( ссылка ) CS1 maint: заархивированная копия как заголовок ( ссылка ) Особенности тимелеафа