Spring roo Vs (Wicket и Spring)

Spring roo - новая структура, и я нашел ее очень интересной. Я работаю над веб-приложением в течение последних 3-4 лет, и всегда обнаружил, что JSP трудно поддерживать между командами, если все не достаточно дисциплинированы в отношении разделения разметки и логики серверов. Я использовал JackBe/BackBase в последних проектах, и мне нравились XML-шаблоны, работающие как представления. Это было намного лучше, чем JSP. Но я не мог автоматизировать веб-тесты через селен для backbase.

Я бы наверняка использовал Spring MVC (-view), Hibernate на сервере. Я нашел Wicket хорошей альтернативой. Вы использовали калитку вместе с Spring и каков был ваш опыт?

Ответ 1

Во-первых, Spring Roo - это инструмент для генерации кода (похож на систему команд Grails):

alt text
(источник: springsource.com)

Во-вторых, приложения Spring Roo в настоящее время используют Spring Web Flow для представления и Spring для клея.

Таким образом, хотя вы можете сравнивать (Spring Web Flow + Spring) и (Wicket + Spring), более поздняя комбинация не предлагает ничего похожего на Roo из коробки (возможно, AppFuse или AppFuse Light, но вы их не упомянули, и они это сторонние проекты).

Другими словами, я не думаю, что "Spring Roo vs (Wicket and Spring)" имеет смысл.

Ответ 2

В нашем текущем проекте используются Spring и Wicket, мы всегда использовали Spring, но переключились на Wicket год назад. Несколько советов:

  • Получите книгу "Каретка в действии".
  • Список рассылки пользователей очень полезен.
  • Убедитесь, что вы понимаете модель программирования Wicket, особенно связанную с сериализацией сессии (книга не помогает в этой области IMHO).
  • Wicket хорош в создании страниц с сохранением состояния, для работы с неактивными страницами требуется больше работы.
  • Есть некоторые хорошие виджеты пользовательского интерфейса, доступные как inmethod DataGrid.
  • Легко вставить ваш Spring beans на ваши страницы или компоненты.

Spring Roo все еще находится в бета-версии (1.0 M2), поэтому может быть немного раньше. Мы также рассматривали Tapestry 5, но мы думали, что это было немного молодым год назад.

Ответ 3

Spring Roo 1.0.0 (GA) теперь выпущен, включая около 100 страниц документации.

Если вам интересно, что такое Roo и зачем использовать его, я рекомендую вам прочитать вводная глава справочного руководства. Он охватывает это и многое другое.

@Antony, Поддержка GWT является основным приоритетом для Roo и того, над чем я сейчас работаю. Ожидайте увидеть интересную интеграцию в самом ближайшем будущем.

Ответ 4

Я был на конференции SpringOne в Амстердаме в начале этого года, когда они объявили Roo. Мое впечатление (и мой коллега, который был там) заключался в том, что Roo был хорош, если вы создавали веб-приложение CRUD каждые несколько недель - они разбили его как чистую версию Java Grails (которая является RoR для Java).

Не выглядел интересным для кого-то еще, но это просто мнение.

Ответ 5

Я видел демо Roo несколько месяцев назад. Он очень похож на Grails (еще одна технология spring), за исключением того, что вместо создания артефактов для языка Groovy вы создаете их для Java.
Тем не менее, он обеспечивает эффективную практику и позволяет применять шаблон MVC чистым способом.

Лично, что демонстрация не заставила меня изменить мой предпочтительный инструментарий (Grails), но это потому, что я могу добиться более быстрых результатов с помощью Groovy (например, синтаксический анализ xml гораздо более "болезненен" на Java, чем в Groovy). Кроме того, с Grails я могу видеть изменения, которые я делаю мгновенно, без необходимости перекомпилировать весь мой проект и повторно запускать приложение каждый раз, когда хочу увидеть результаты. И последнее, но не менее важное: в Grails у вас есть тонны плагинов для создания привлекательных веб-сайтов Ajax (например, ZK, если вы хотите избежать Javascript, но есть плагины для GWT, Yahoo, Dojo и т.д.).

Итак, если вы не хотите изучать Groovy (что не слишком сложно, если вы уже знаете Java), Roo - это способ пойти на создание чистых веб-проектов со всей мощью Hibernate и Spring.

Надеюсь, это поможет...

Ответ 6

Зачем использовать Roo, когда можно построить что-то ж /GWT и в конечном итоге получить более богатый лучший результат и без ограничений Roo и его архитектуры. Spring Технология Web Flow - это вчерашний день.

Ответ 7

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

Ответ 8

Как скоро с поддержкой Roo GWT? Я думаю, что использование GWT by Roo делает его огромной победой для GWT и Roo!

Ответ 9

Roo и GWT доступны сегодня в форме предварительного выпуска. На мой взгляд, определенно не готов к прайм-тайм.