- Spring MVC - это полный HTTP-ориентированный MVC-фреймворк, управляемый Spring Framework и основанный на сервлетах. Это было бы эквивалентно JSF в стеке JavaEE. Наиболее популярными элементами в нем являются классы, помеченные аннотацией
@Controller
, где вы реализуете методы, к которым вы можете обращаться, используя различные HTTP-запросы. Он имеет эквивалент @RestController
для реализации API на основе REST.
- Spring boot - это утилита для быстрой настройки приложений, предлагающая готовую конфигурацию для создания приложений на базе Spring. Как вы, возможно, знаете, Spring объединяет широкий спектр различных модулей под своей эгидой , таких как spring-core , spring-data ,
spring-web (кстати, включая Spring MVC) и так далее. С помощью этого инструмента вы можете сказать Spring, сколько из них использовать, и вы получите быструю настройку для них (вы можете изменить его самостоятельно позже).
Итак, Spring MVC - это фреймворк, который будет использоваться в веб-приложениях, а Spring Boot - это готовый к работе инициализатор проекта на основе Spring . Возможно, вам будет полезно посетить вики-страницу Spring MVC, а также вики-страницу Spring Boot в SO.
Экстремальный байкер
источник
Spring Boot
затем выполнить веб-функциональностьSpring MVC
?Spring MVC и Spring Boot хорошо описаны в других ответах, поэтому, не повторяя этого, позвольте мне перейти непосредственно к конкретике. Spring Boot и Spring MVC не являются сопоставимыми или взаимоисключающими. Если вы хотите заниматься разработкой веб-приложений с помощью Spring, вы все равно должны использовать Spring MVC . Тогда возникает вопрос, использовать ли Spring Boot или нет.
Я думаю, что для разработки обычных приложений Spring или для начала изучения Spring рекомендуется использовать Spring Boot . Это значительно облегчает работу, готово к производству и быстро получает широкое распространение.
Я видел, как начинающие задают этот вопрос, потому что в STS (Spring Tool Suite) есть два мастера: один для создания проекта Spring Boot, а другой для создания проекта Spring MVC. Поэтому я рекомендую создать проект Spring Boot и выбрать в качестве модуля Web .
источник
Это наглядное представление о разнице.
Пожалуйста, обратитесь к этой ссылке для получения дополнительной информации:
Src этого изображения
источник
Проще говоря, это можно сформулировать так:
Spring boot = Spring MVC + Auto Configuration(Don't need to write spring.xml file for configurations) + Server(You can have embedded Tomcat, Netty, Jetty server).
А Spring Boot является платформой Opinionated, поэтому его сборка учитывает быструю разработку, меньше времени на настройку и очень хорошую поддержку сообщества.
источник
Spring MVC
является подпроектом Spring Framework, предназначенным для проектирования и разработки приложений, использующих шаблон MVC (Model-View-Controller). Spring MVC предназначен для полной и полной интеграции с Spring Framework и транзитивно, с большинством других подпроектов.Spring Boot
может быть понято из этой статьи командой Spring Engineering. Он предположительно самоуверенный, то есть он активно поддерживает определенный стиль быстрого развития, но он разработан достаточно хорошо, чтобы приспособиться к исключениям из правила, если хотите. Короче говоря, это соглашение по методологии конфигурации, которое готово понять вашу необходимость нарушить соглашение, когда это оправдано.источник
Вот некоторые основные моменты, которые отличают Spring, Spring MVC и Spring Boot:
Весна :
Spring MVC
Весенний ботинок:
(Эволюция, например: Spring -> Spring MVC -> Spring Boot, поэтому более новая версия обладает совместимостью с функциями старой версии.) Примечание: в нем не все.
источник
SpringBoot фактически предварительно настроен, что сокращает конфигурацию котла и обеспечивает самый простой или быстрый способ запуска вашего приложения.
SpringBoot переносит головную боль конфигурации от разработчика к себе, а не к Spring.
Очевидно, что SpringBoot основан на концепции среды Spring, такой как bean, controller, services, jpa и т. Д.
Можно сказать, что SpringBoot - это обертка Spring.
В SpringBoot по умолчанию порт сервера равен 8080, но если вы хотите изменить его, перейдите в ваш application.properties и напишите
server.port = 8084
источник
Используя весеннюю загрузку, вам не нужно создавать конфигурацию. Это будет сделано автоматически при создании проекта.
Если вы используете Spring MVC, вам нужно создать конфигурацию самостоятельно. Это сложнее, но это важно.
источник
Не повторяя то же самое в предыдущих ответах,
я пишу этот ответ для людей, которые хотят начать новый проект и не знают, какая из них является лучшей основой для запуска вашего проекта. Если вы новичок в этом фреймворке, лучшее, что я предпочитаю, это использовать загрузочную пружину (с STS / Spring Tool Suite ). Потому что это очень помогает. Сделайте все конфигурации самостоятельно. Кроме того, используйте Hibernate с spring-boot в качестве основы базы данных. С этой комбинацией ваше приложение будет лучшим. Я могу гарантировать это своим опытом.
Даже это одна из лучших платформ для JEE (в настоящее время), которая скоро умрет. Есть легкие альтернативы. Так что будьте в курсе вашего опыта, не придерживайтесь одной конкретной структуры. Лучше всего быть свободно в концепциях, а не в рамках.
источник
Подумайте так:
Spring MVC - это веб-фреймворк для реализации архитектуры MVC.
Spring Boot - это инструмент, ориентированный на программиста. Программист должен сосредоточиться на программировании, а инструмент - на настройках. Таким образом, нам не нужно тратить время на настройку связки XML для создания простого «Hello world».
источник
Ниже приведены различия между Spring boot и Spring MVC.
источник
Spring MVC и Spring Boot существуют для разных целей. Поэтому не стоит сравнивать друг друга с соперниками.
Что такое Spring Boot?
Spring Boot - это структура для упаковки весенних приложений с разумными настройками по умолчанию. Что это значит?. Вы разрабатываете веб-приложение, используя Spring MVC, Spring Data, Hibernate и Tomcat. Как вы упаковываете и развертываете это приложение на своем веб-сервере. На данный момент мы должны вручную написать конфигурации, файлы XML и т. Д. Для развертывания на веб-сервере.
Spring Boot сделает это за вас с настройкой Zero XML в вашем проекте. Поверьте, вам не нужен дескриптор развертывания, веб-сервер и т. Д. Spring Boot - это волшебная структура, которая объединяет все зависимости для вас. Наконец, ваше веб-приложение будет автономным JAR-файлом со встроенными серверами.
Если вы все еще не знаете, как это работает, пожалуйста, прочитайте о разработке инфраструктуры микросервиса с использованием Spring Boot.
Что такое Spring MVC?
Это традиционная структура веб-приложений, которая помогает вам создавать веб-приложения. Это похоже на фреймворк Struts.
Spring MVC - это среда Java, которая используется для создания веб-приложений. Это следует шаблону проектирования Model-View-Controller. Он реализует все основные функции каркаса с пружинными сердечниками, такие как Inversion of Control, Dependency Injection.
Spring MVC предоставляет элегантное решение для использования MVC в Spring Framework с помощью DispatcherServlet. Здесь DispatcherServlet - это класс, который получает входящий запрос и сопоставляет его с нужным ресурсом, таким как контроллеры, модели и представления.
Я надеюсь, что это поможет вам понять разницу.
источник