В этом уроке мы рассмотрим Spring Boot и увидим, как он отличается от Spring Framework. Мы также обсудим различные функции, предлагаемые Spring Boot.
Что такое весенний ботинок?
Spring — это мощная платформа для разработки приложений уровня предприятия. Он предоставляет нам такие функции, как внедрение зависимостей, а также поддержку многих других расширений платформы.
Тем не менее, есть много конфигураций и шаблон кода. Например, для каждого приложения Spring MVC мы будем настраивать DispatcherServlet , InternalResourceViewResolver и многие другие компоненты.
Spring Boot является расширением среды Spring и позволяет нам быстро загрузить готовое к использованию приложение Spring.
Это чрезвычайно мощный и предлагает широкий спектр функций.
Весенний инициализр:
Мы можем использовать веб-сайт Spring Initializr для быстрой загрузки шаблона приложения Spring Boot с необходимыми зависимостями:
В разделе зависимостей мы можем добавить начальные зависимости Spring Boot, необходимые для нашего приложения. Например, мы можем искать и включать Spring Web Starter, если мы разрабатываем веб-приложение.
Все приложения Spring Boot имеют родительский раздел, определенный в их файле POM :
1
2
3
4
5
6
|
< parent > < groupId >org.springframework.boot</ groupId > < artifactId >spring-boot-starter-parent</ artifactId > < version >2.1.7.RELEASE</ version > < relativePath /> </ parent > |
Родительский POM одновременно управляет версией дочерних зависимостей. И так, мы можем опустить теги версии для каждой дочерней зависимости. Он также определяет конфигурации по умолчанию для нескольких плагинов.
Зависимости стартера Spring Boot:
Вот некоторые из наиболее популярных и распространенных стартовых пакетов, предоставляемых Spring Boot:
- spring-boot-starter: основной стартер, который включает поддержку автоконфигурации, ведение журнала, поддержку YAML и т. д.
- spring-boot-starter-test: включает поддержку для тестовых сред, таких как Junit, Spring Test, Mockito, Hamcrest
- spring-boot-starter-web: обеспечивает поддержку Spring MVC; полезно в веб-разработке RESTful
- spring-boot-starter-jpa: поддерживает Spring Data JPA и Hibernate
- spring-boot-starter-security: есть зависимости для Spring Security
Spring Boot CLI:
Вместо использования Spring Initializr мы также можем сгенерировать наше приложение с помощью Spring Boot CLI :
1
|
$spring init --dependencies=data-jpa,web sampleapplication |
Он создаст проект в текущем каталоге с зависимостями Spring Data JPA Starter и Spring Web Starter .
Автоконфигурация Spring Boot:
С помощью функции автоматической настройки Spring Boot сканирует все jar-файлы, присутствующие в нашем пути к классам, и многое настраивает для нас. Это чрезвычайно полезная функция, которая значительно сокращает усилия по разработке.
Мы можем использовать аннотацию @EnableAutoConfiguration или @SpringBootApplication для включения автоконфигурации. Аннотации @SpringBootApplication объединяют группы @ComponentScan, @SpringBootConfiguration и @EnableAutoConfiguration .
Основной класс нашего приложения Spring Boot выглядит примерно так:
1
2
3
4
5
6
7
|
@SpringBootApplication public class SampleApplication { public static void main(String args[]) { SpringApplication.run(SampleApplication. class , args); } } |
Мы можем сгенерировать отчет автоконфигурации, чтобы увидеть, что все было автоматически сконфигурировано для нашего приложения Spring Boot, обновив наш app.properties :
1
|
logging.level.org.springframework: DEBUG |
Или просто запустите наше приложение с ключом -debug .
Встроенный сервер:
Spring Boot предоставляет встроенный сервер, поэтому приложения автономны и довольно просты в запуске.
При установке mvn в нашей целевой папке создается исполняемый файл jar. Все, что нам нужно сделать, это выполнить этот jar-файл, чтобы наше приложение работало:
1
|
java -jar SampleApplication- 1.0 .jar |
Tomcat является сервером по умолчанию для приложений Spring Boot, но мы можем изменить эту конфигурацию.
Spring Boot Свойства:
Существует множество готовых к использованию свойств Spring Boot, которые мы можем напрямую добавить в наши application.properties . Например, чтобы исключить автоконфигурацию для нескольких классов, мы будем иметь:
1
|
spring.autoconfigure.exclude= # Auto-configuration classes to exclude |
Мы можем прочитать документацию Spring Boot для изучения доступных опций.
Профили весенней загрузки:
Для любого корпоративного приложения у нас обычно есть различные среды развертывания: разработка, UAT и производство. Каждая из этих сред, скорее всего, будет иметь определенные конфигурации среды.
Spring Boot добавляет несколько дополнительных функций в конфигурации профиля Spring. Мы можем определить активный профиль в нашем application.properties :
1
2
|
#Defines active profile spring.profiles.active= dev |
Кроме того, у нас могут быть файлы свойств для приложений : application- {profile} .properties .
Вывод:
В этом руководстве мы рассмотрели различные функции Spring Boot и то, как он помогает нам в разработке приложений RAPID .
Опубликовано на Java Code Geeks с разрешения Шубхры Шриваставы, партнера нашей программы JCG . Смотрите оригинальную статью здесь: Введение в Spring Boot Мнения, высказанные участниками Java Code Geeks, являются их собственными. |