Альтернативы плиткам Apache

Я пишу приложение Spring MVC и ищу способ делать макеты в представлениях. Единственный вариант, который я вижу, — это Apache Tiles, который я использовал раньше и знаю, насколько болезненно поддерживать его конфигурацию.

Есть ли хорошие альтернативы? Я просмотрел SiteMesh и Spring Surf. оба кажутся бездействующими.


person Aravindan R    schedule 19.12.2011    source источник


Ответы (5)


Месяц назад столкнулся с такой же дилеммой. Я был опытным разработчиком, использующим плитки Apache, и мне хотелось попробовать что-то другое.

Я провел небольшое исследование и обнаружил, что Spring MVC имеет некоторую интеграцию с freemarker и sitemesh. Я решил дать обоим шанс.

Кажется, у плитки самое активное сообщество.

Вы также можете попробовать реализовать чистую скорость.

Подводя итог, мой проект вернулся к тайлам. Tiles — это надежная структура шаблонов, и как только вы поймете ее возможности, мне будет трудно найти хорошую замену. Кроме того, если вы уже разбираетесь в плитках apache, я считаю, что преимущества переключения фреймворков (если таковые имеются) не оправдывают кривой обучения, необходимой для выбора sitemesh/freemarker.

http://www.sitemesh.org/overview.html

http://freemarker.sourceforge.net/

person Roy Kachouh    schedule 19.12.2011

Плитки и Sitemesh сильно различаются по тому, для чего они предназначены.

  • Плитки используются как часть вашего приложения, предназначенного для использования плиток.
  • Sitemash разработан как фильтр перед одним или несколькими уже существующими приложениями. Где вы хотите изменить вывод приложений (например (очень простая задача) заменить логотип или добавить дополнительный пункт меню).

С другой стороны, я не понимаю, зачем столько xml. Вы должны написать один блок xml для каждой страницы, чтобы определить, какой макет ей нужен. (Если вы все еще настраиваете список файлов, содержащих конфигурации плиток, взгляните на `org.springframework.web.servlet.view.tiles2.TilesConfigurer".)

Если вы хотите избавиться даже от этих файлов, то, возможно, стоит больше думать о расширении тайлов, чем об использовании другого фреймворка.

person Ralph    schedule 20.12.2011

IMO SiteMesh и Tiles — довольно хорошие подходы, хотя более новые выпуски Tiles добавляют много неиспользованной мощности — это больше, чем простой механизм шаблонов.

Если вы считаете обслуживание проблемой, я бы подумал о том, чтобы обернуть ее тонким слоем абстракции, используя либо DSL, либо легкий графический интерфейс, любой из них может иметь большое значение.

person Dave Newton    schedule 19.12.2011

Вы можете использовать phpj

Он прост в использовании, поставляется с примерами. Вы можете использовать его для шаблонов просмотра или генерировать свой html-контент любым удобным для вас способом.

person larsig    schedule 23.07.2013

Хотя лично у меня нет опыта, вот еще один вариант: https://code.google.com/p/commentit/

person rmoestl    schedule 08.08.2014