пружинный каркас MVC заменяет стойки? или я в замешательстве? - PullRequest
2 голосов
/ 05 января 2010

это стойки (1 или 2?), Используемые строго для архитектуры типа MVC, или есть что-то еще?

Причина, по которой я спрашиваю, заключается в том, что я смотрю на веб-приложение, и они, кажется, используют как пружину, так и распорки.

Ответы [ 4 ]

8 голосов
/ 05 января 2010

Подведем итог:

  • Spring и Spring MVC - это разные вещи.
  • Spring - это структура внедрения зависимостей и инверсия контейнера управления
  • Spring MVC - это веб-фреймворк MVC
  • Struts также является веб-фреймворком MVC
  • Spring MVC и Struts нельзя использовать одновременно (ну, возможно, они могут, но это нежелательно)
  • Spring и Struts могут использоваться одновременно: Struts предоставляет веб-слой, а Spring управляет сервисным уровнем и его подключением к веб-слою.
4 голосов
/ 05 января 2010

Используются ли стойки (1 или 2?) Строго для архитектуры типа MVC или есть что-то большее?

Хмм ... Struts 2 (AKA WebWork 2) представляет собой MVC-фреймворк , подобный Spring MVC или Stripes Framework . Все они являются альтернативами и предназначены для уровня представления (и только для уровня представления).

Причина, по которой я спрашиваю, заключается в том, что я смотрю на веб-приложение, и они, кажется, используют как пружину, так и распорки.

Использование Struts 2 (или Stripes) не исключает использование Spring для Dependency Injection (и других сервисов). Другими словами, вам не нужно использовать Spring MVC на уровне презентации, чтобы использовать Spring на других уровнях. На самом деле, большинство фреймворков (это, по крайней мере, верно для Struts 2 и фреймворка Stripes) действительно обеспечивают хорошую интеграцию Spring, что является чем-то обязательным из-за популярности Spring.

1 голос
/ 05 января 2010

Spring - многоголовый зверь, и он может быть использован для всех видов приложений, веб и других. Когда вы используете Spring для веб-приложения, вы можете пройти весь путь и использовать собственную MVC-среду Spring для обработки веб-частей вашего приложения. Но ты не обязан. Внутренние аспекты Spring - то есть все компоненты, составляющие различные компоненты вашего приложения, и различные инструменты Spring, которые вы используете с ними (управление транзакциями, безопасность и т. Д.), Могут использоваться с любым интерфейсом. Явные подключаемые модули доступны для интеграции Spring со Struts, Struts 2 и некоторыми другими, но даже это не является обязательным, и вы можете использовать Spring вообще без какой-либо инфраструктуры MVC.

0 голосов
/ 05 января 2010

Spring поддерживал Struts практически с самого начала. Struts используется в качестве MVC (механизм доставки DTO для бэкэнда), и вся логика бэкэнда обрабатывается Spring, обеспечивая IoC и сопоставление со Struts. Читайте больше здесь и здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...