Какое решение является тимелист?
Я читал, что в настоящее время предпочтение отдается чабрецу вместо JSP. Какую проблему решает тимелист, чего не может JSP? Как тимелист по сравнению с другими движками?
1 ответ
Ну, это действительно вопрос, основанный на мнении, и таким будет мой ответ:)
Основное отличие состоит в том, что JSP компилируются в классы Java-сервлетов, тогда как Thymeleaf читает файл шаблона, анализирует его DOM и затем применяет к нему модель. Это приводит к снижению производительности и дает JSP преимущество в производительности даже при включенном кэшировании шаблонов в Thymeleaf. С другой стороны, он делает разработку Thymeleaf намного проще, и вот почему:
Thymeleaf использует простой HTML в качестве своих шаблонов. Вы можете выбрать чистый подход HTML5 с помощью
data-th
атрибуты или оригинальное пространство именth:
атрибутов. Преимущество использования простого HTML заключается в том, что вы можете открыть его в браузере, что облегчает работу дизайнеров: и дизайнеры, и разработчики могут работать с одним файлом.Шаблоны Thymeleaf можно использовать без сервера приложений, и они также прекрасно работают со встроенными серверами. Вам не нужно прыгать через обручи, чтобы проводить интеграционное тестирование ваших шаблонов, что вы можете сделать либо через собственную автономную библиотеку тестирования шаблонов Thymeleaf, либо в рамках функциональных тестов, например, интеграционных тестов ваших контроллеров Spring MVC.
Thymeleaf имеет более легкий и мощный синтаксис и лучшую интеграцию с экосистемой Spring. Он был разработан для интеграции с Spring с его концепции, но вы также можете использовать его за пределами Spring. Я нашел это полезным для электронной почты и генерации отчетов.
Шаблоны Thymeleaf допускают большое повторное использование; Вы можете создавать небольшие фрагменты шаблонов и повторно использовать их в других шаблонах, что спасает жизнь в проектах с большим количеством шаблонов. Он также имеет отличную поддержку макета из коробки, хотя вы также можете найти плагины сообщества, если вам нужна большая гибкость / мощность.
Отказ от ответственности: я не занимался разработкой Thymeleaf более года, но, насколько я вижу, это не сильно изменилось. Вы также можете взглянуть на эту статью из Spring - хотя она немного устарела, она иллюстрирует основные отличия.