В этом посте мы узнаем о Spring и Spring Boot. Будут подробно освещены следующие темы: Что такое Spring и Spring Boot, чем они отличаются друг от друга, чем Spring Boot отличается от Spring MVC, а также множество других часто задаваемых вопросов о Spring и Spring Boot. К концу этой статьи вы получите четкое представление о принципах, лежащих в основе Spring и Spring Boot.

Что такое весна?

Spring Framework (Spring), платформа приложений с открытым исходным кодом, обеспечивает инфраструктурную поддержку для разработки приложений Java. Spring, одна из самых популярных платформ Java Enterprise Edition (Java EE), помогает разработчикам создавать быстрые объектно-ориентированные приложения Java (POJO).

Разработчики могут добавлять код к большому объему предварительно упакованного кода, называемого фреймворком, для решения проблем в определенной области. Java Server Faces (JSF), Maven, Hibernate, Struts и Spring — это лишь некоторые из известных фреймворков Java.

Spring Framework с лицензией Apache 2.0 был выпущен в июне 2003 года Родом Джонсоном и размещается на SourceForge.

Что такое Spring Boot?

Spring Framework служит основой для проекта, известного как Spring Boot. Он предлагает более быстрый и простой способ установки, настройки и выполнения как простых, так и веб-программ.

Это модуль Spring, который предоставляет Spring Framework доступ к возможностям RAD (Rapid Application Development). Поскольку он требует минимальной конфигурации Spring, он используется для создания автономных приложений на основе Spring, которые вы можете просто выполнять.

Комбинация Spring Framework и встроенных серверов известна как Spring Boot.

В Spring Boot не требуется конфигурация XML (дескриптор развертывания). В нем используется соглашение по парадигме разработки программного обеспечения для настройки, что снижает нагрузку на разработчика.

Для создания Spring Boot мы можем использовать Spring STS IDE или Spring Initializr.

Ключевые отличия

Сервлет — это принципиальное отличие самозагрузки приложения в Spring от Spring Boot. Точкой входа Spring для начальной загрузки является либо web.xml, либо SpringServletContainerInitializer. Напротив, Spring Boot загружает приложение, используя только характеристики Servlet 3.

Фреймворк Spring требует ручного построения конфигурации. В Spring Boot есть настройки по умолчанию, которые позволяют ускорить загрузку. Чтобы создать веб-приложение с помощью Spring Framework, необходимы определенные зависимости. С другой стороны, Spring Boot требует только одну зависимость, чтобы приложение работало.

Что отличает Spring от Spring Boot

Весна

Каково его использование?

Приложения создаются с использованием фреймворка Spring Java EE.

ключевой элемент

Базовым или наиболее важным элементом среды Spring является внедрение зависимостей, метод проектирования, который устраняет зависимости от компьютерного кода, чтобы упростить поддержку и тестирование программы.

Почему это используется?

Его цель — упростить программирование Java EE (Enterprise Edition), чтобы разработчики могли более эффективно выполнять свои задачи.

Тип разработки приложений

Среду Spring можно использовать для создания слабосвязанного приложения.

Дескриптор для развертывания

Приложение Spring не может быть запущено без дескриптора развертывания.

Поддержка баз данных в оперативной памяти

Платформа Spring не поддерживает базу данных в памяти.

Шаблон кода

Фреймворк Spring требует слишком много строк стандартного кода даже для простых задач.

Конфигурации

Фреймворк Spring требует ручного построения конфигурации.

Зависимости

В Spring Framework для создания веб-приложения требуются определенные зависимости.

Аутентификация через HTTP

В базовой HTTP-аутентификации указано, что для предоставления подтверждений безопасности необходимо включить ряд предварительных условий и параметров. Spring требует требований как spring-security-web, так и spring-security-config для настройки безопасности в приложении. Следующим шагом является включение класса, который реализует WebSecurityConfigurerAdapter и использует аннотацию @EnableWebSecurity.

Тестирование

Тестировать Spring Boot сложнее, чем Spring Boot из-за большого объема исходного кода.

Конфигурация в XML

Конфигурация XML требуется фреймворком Spring.

Инструменты командной строки

Платформа Spring не включает инструмент CLI для создания и тестирования приложений.

Плагины

Фреймворк Spring не предлагает никаких Maven, Gradle или других плагинов, в отличие от Spring Boot.

Весенний ботинок

Каково его использование?

Разработка REST API — это основное использование среды Spring Boot.

ключевой элемент

Основная функция Spring Boot — автоконфигурация. «Автоконфигурация Spring Boot» — это метод автоматической настройки приложения Spring на основе зависимостей, найденных в пути к классам. Автоконфигурация может ускорить и упростить разработку, устраняя необходимость определения некоторых bean-компонентов, которые являются частью классов автоконфигурации.

Почему это используется?

Функциональность быстрой разработки приложений (RAD) добавлена ​​в среду Spring с помощью Spring Boot для более быстрой разработки приложений.

Тип разработки приложений

С помощью Spring Boot можно создать отдельное приложение.

Зависимость от серверов

Всего два встроенных или встроенных сервера, предоставляемых Spring Boot, — это Tomcat и Jetty.

Дескриптор для развертывания

Дескриптор развертывания не требуется для Spring Boot.

Поддержка баз данных в оперативной памяти

Одной из баз данных в памяти, поддерживаемых Spring Boot, является H2.

Шаблон кода

Стандартный код избегается, что ускоряет производство и экономит время.

Конфигурации

Spring Boot поставляется с параметрами по умолчанию, которые ускоряют загрузку.

Зависимости

Напротив, Spring Boot просто нужна одна зависимость для включения приложения. Окончательный архив по умолчанию включает дополнительные зависимости, которые вводятся во время сборки.

Аутентификация через HTTP

Хотя Spring Boot также нуждается в этих зависимостях для работы, нам нужно только указать требование spring-boot-starter-security, потому что это автоматически добавит все необходимые зависимости в путь к классам.

Наличие меньшего количества исходного кода упрощает тестирование Spring Boot.

Конфигурация в XML

Для Spring Boot конфигурация XML не требуется.

Командная строка инструментов

Spring Boot предоставляет инструмент CLI для создания и тестирования приложений.

Плагины

Spring Boot предоставляет плагины для инструментов сборки Maven и Gradle. Одной из функций, предоставляемых плагинами, является упаковка исполняемых файлов jar.

Заключение

Хотя они тесно связаны, Spring и Spring Boot теперь хорошо изучены. Наконец, Spring Boot обеспечивает все функциональные возможности обычной среды Spring, а также значительно упрощает разработку приложений. Вы можете запустить приложение значительно быстрее, чем при использовании Spring, благодаря предварительно настроенным атрибутам Spring Boot.

Хотите узнать больше о Spring и Spring Boot !!!

"Проверь это!!!"