В настоящее время я создаю приложение Spring MVC. Я хотел использовать JSP-страницы с библиотеками тегов для обработки уровня представления и форматирования HTML, но я столкнулся с другой группой в моей компании, которая использует шаблоны Velocity для той же цели.
Из того, что я вижу, мне кажется, что между двумя подходами есть много общего:
- Оба имеют простой для понимания синтаксис. Облегчает понимание и использование для не-разработчиков, позволяя дизайнерам сосредоточиться на HTML/CSS и использовать библиотеки директив/тегов только в тех немногих случаях, когда им нужен условный/динамический контент без необходимости полного понимания Джава.
- Легко увидеть, какая часть контента является HTML, а какая — директивами/логикой.
- Оба активно используются и хорошо поддерживаются.
- Простота интеграции с Spring MVC.
Но, сравнивая две технологии, я не вижу особых причин использовать одну по сравнению с другой. Мне трудно думать о каких-либо недостатках, характерных для Velocity или JSTL.
Итак, мой вопрос: каковы, по вашему мнению, плюсы и минусы каждого из них? Если вы создали (Spring) приложение MVC с использованием одного или другого, что заставило вас выбрать технологию уровня представления, которую вы используете, и что (если что-то) заставило вас отказаться от другого?
Обновление: я нашел похожее обсуждение этой же темы в архиве на форуме Spring Framework здесь, что может представлять интерес для всех, кто принимает такое же решение между JSTL и Velocity, как и я.