Spring Framework - библиотека или набор инструментов для упрощения разработки любых Java программ. На данный момент - это один из самых продвинутых фреймворков в мире и популярность его растет каждый день. Недаром почти на всех вакансиях с более-менее хорошей зарплатой - требуется знание этого фреймворка. Если вы не знаете SPRING - вы очень многое теряете.
ДЛЯ ЧЕГО НУЖЕН SPRING?
- Упрощение разработки любых приложений на Java, разгрузка кода
- Программный код становится проще, связь между объектами слабее
- Каждый объект занимается свои делом (POJO)
- Использование принципов ООП на полную мощность
- Дополнительная логика подключается извне
- Готовые встроенные модули (работа с БД, безопасность, транзакции, авторизация, сервисы и пр.)
Spring Framework берет все существующие Java технологии, учитывает их недочеты и предоставляет вам более удобный вариант их использования.
Именно поэтому в последнее время все чаще и чаще разработчики переходят на сторону Spring - их коды становятся понятнее и удобнее.
SPRING MVC
Spring MVC - это дополнение к стандартным возможностям Spring для разработки веб приложений.
Для многих веб программистов это стало настоящим открытием, потому никогда еще раньше веб разработка не была такой понятной и быстрой.
Конечно, поначалу придется расширить свой кругозор: узнать многие понятия, которые раньше не использовали, разобрать архитектуру Spring MVC - но это того стоит.
Один раз попробовав, вы скорее всего уже всегда будете использовать Spring для разработки веб проектов, настолько он удобен.
Если вы разрабатывали ранее какие-либо приложения на JSP, JSF или других технологиях - вам не нужно будет заново переучиваться, потому что Spring MVC легко интегрируется со многими фреймворками.
Тем самым вы сможете использовать весь свой багаж знаний и добавить к нему еще и Spring.
Без знаний Spring MVC вы не сможете создавать веб приложения на Spring, поэтому его изучение - обязательно.
Независимо от того, какой frontend вы будете использовать (JSP, JSF, Angular, ReactJS и др.) - все равно backend у вас будет работать на Spring MVC.
Многие новички путают эти понятия и сразу пытаются начать изучение какого-либо JS-фреймворка.
Это неправильно, сначала вы должны хорошо научиться создавать backend на Spring MVC, а потому уже браться за изучение любого frontend инструмента.