Руководство по Spring Boot

Добро пожаловать в учебник по Spring Boot. Spring Boot – это совершенно новый проект от команды Pivotal (The Spring Team). Это фреймворк, разработанный поверх существующего Spring Framework.

Учебник Spring Boot

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

Что такое Spring Boot?

Spring Boot – это фреймворк от “The Spring Team” для упрощения начальной загрузки и разработки новых приложений Spring. Он предоставляет значения по умолчанию для конфигурации кода и аннотаций, чтобы быстро запустить новые проекты Spring. Он следует принципу “Утвержденной конфигурации по умолчанию”, чтобы избежать большого количества шаблонного кода и конфигурации для улучшения процесса разработки, модульного тестирования и интеграционного тестирования.

Что НЕ является Spring Boot?

Фреймворк Spring Boot не создан командой Spring с нуля, а реализован поверх существующего Spring Framework (Spring IO Platform). Он не используется для решения новых проблем, а предназначен для решения тех же проблем, что и Spring Framework.

Почему Spring Boot?

  • Для упрощения разработки приложений на Java, процесса модульного тестирования и интеграционного тестирования.
  • Для сокращения времени разработки, модульного тестирования и интеграционного тестирования за счет предоставления некоторых значений по умолчанию.
  • Для повышения продуктивности.

Не беспокойтесь о том, что такое “Мнение о конфигурации по умолчанию” на этом этапе. Мы подробно объясним это на примерах в следующих сообщениях.

Преимущества Spring Boot:

  • Очень легко разрабатывать приложения на основе Spring с использованием Java или Groovy.
  • Это сокращает много времени разработки и повышает производительность.
  • Это позволяет избежать написания множества шаблонного кода, аннотаций и конфигурации XML.
  • Очень легко интегрировать приложение Spring Boot с его экосистемой Spring, такой как Spring JDBC, Spring ORM, Spring Data, Spring Security и т. д.
  • Он следует подходу “Мнение о конфигурации по умолчанию” для сокращения усилий разработчика.
  • Он предоставляет встроенные HTTP-серверы, такие как Tomcat, Jetty и др., для легкой разработки и тестирования веб-приложений.
  • Он предоставляет инструмент командной строки (CLI) для легкой и быстрой разработки и тестирования приложений Spring Boot (Java или Groovy) из командной строки.
  • Он предоставляет множество плагинов для легкой разработки и тестирования приложений Spring Boot с использованием средств сборки, таких как Maven и Gradle
  • Он предоставляет множество плагинов для удобной работы с встроенными и в памяти базами данных.

Простыми словами, что такое Spring Boot Это означает, что Spring Boot – это просто существующий Spring Framework + некоторые встроенные HTTP-серверы (Tomcat/Jetty и т. д.) – конфигурации XML или аннотаций. Здесь минус означает, что нам не нужно писать конфигурацию XML и всего лишь немного аннотаций.

Основная цель Spring Boot:

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

  • Чтобы полностью избежать конфигурации XML
  • Чтобы избежать определения дополнительной конфигурации аннотаций (совмещает некоторые существующие аннотации Spring Framework в одной простой и единой аннотации)
  • Чтобы избежать написания множества операторов импорта
  • Чтобы предоставить некоторые значения по умолчанию для быстрого запуска новых проектов без задержек.
  • Чтобы предоставить предопределенный подход к разработке.

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

Ограничение/недостаток Spring Boot:

У фреймворка Spring Boot есть одно ограничение. Процесс преобразования существующих или устаревших проектов Spring Framework в приложения Spring Boot занимает некоторое время, но мы можем преобразовать любые проекты в приложения Spring Boot. Создание совершенно новых/зеленых проектов с использованием Spring Boot очень просто. Чтобы начать с предопределенного подхода к созданию приложений Spring Boot, команда Spring (команда Pivotal) предоставляет следующие три подхода.

  • Использование инструмента Spring Boot CLI
  • Использование среды разработки Spring STS
  • Использование веб-сайта Spring Initializr

Мы рассмотрим каждый подход в подробностях с примерами в следующих сообщениях. Найти веб-сайт Spring Initializr можно по адресу: https://start.spring.io/ Мы можем разрабатывать два типа приложений на основе Spring с использованием Spring Boot

  • Приложения на основе Java
  • Груви-приложения

Мы можем использовать Spring Boot CLI или Spring STS IDE или веб-сайт Spring Initializr для разработки груви-приложений Spring Boot. Однако для разработки приложений Spring Boot на Java мы можем использовать Spring STS IDE или веб-сайт Spring Initializr. Тем не менее, Groovy также является языком JVM, почти аналогичным языку Java. Мы можем объединить как Groovy, так и Java в один проект. Потому что, как и файлы Java, файлы Groovy в конечном итоге компилируются только в файлы *.class. Как файлы *.groovy, так и *.java преобразуются в файл *.class (тот же формат байт-кода). Программная модель фреймворка Spring Boot вдохновлена программной моделью Groovy. Внутренне Spring Boot использует некоторые техники и инструменты на основе Groovy для предоставления стандартных импортов и конфигурации. Фреймворк Spring Boot также объединил существующие аннотации фреймворка Spring в простые или одиночные аннотации. Мы рассмотрим эти аннотации одну за другой в предстоящих сообщениях с реальными примерами. Фреймворк Spring Boot радикально изменяет программную модель приложений на основе Spring-Java на новую программную модель. На данный момент Spring Boot находится только на начальном этапе, но будущее полностью зависит от Spring Boot. Счастливого изучения фреймворка Spring Boot!

Source:
https://www.digitalocean.com/community/tutorials/spring-boot-tutorial