Читаем Spring in Action Covers Spring 5-1--11 полностью

Хотя мы говорим о зависимостях, обратите внимание, что есть три зависимости, объявленные в элементе . Первые две должны выглядеть несколько знакомыми. Они напрямую соответствуют зависимостям Web и Thymeleaf, выбранным до нажатия кнопки Готово в мастере создания проекта Spring Tool Suite. Третья зависимость предоставляет множество полезных возможностей тестирования. Вам не нужно было устанавливать флажок, чтобы он был включен, потому что Spring Initializr предполагает (надеюсь, правильно), что вы будете писать тесты.


Можно также заметить, что все три зависимости имеют слово starter в идентификаторе артефакта. Зависимости Spring Boot starter отличаются тем, что обычно сами по себе не имеют кода библиотеки, а вместо этого временно извлекают другие библиотеки. Эти стартовые зависимости предлагают три основных преимущества:  

Файл сборки будет значительно меньше и проще в управлении, так как вам не нужно будет объявлять зависимость от каждой библиотеки, которая вам может понадобиться.  

Вы можете думать о своих зависимостях с точки зрения возможностей, которые они предоставляют, а не с точки зрения имен библиотек. Если вы разрабатываете веб-приложение, вы добавите зависимость web starter, а не список отдельных библиотек, которые позволяют писать веб-приложение.  

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

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

Это является заданием Maven, которое позволяет запускать приложение с помощью Maven. Вы попробуете это в разделе 1.3.4.

Это гарантирует, что все библиотеки зависимостей включены в исполняемый файл JAR и доступны в пути к классам среды выполнения.  

Это создает файл манифеста в файле JAR, который обозначает класс начальной загрузки (TacoCloudApplication, в вашем случае) как основной класс для исполняемого JAR.

Говоря о классе начальной загрузки (bootstrap), давайте откроем его и посмотрим поближе.

 

Начальная загрузка приложения

 

Поскольку вы будете запускать приложение из исполняемого файла JAR, важно иметь основной класс, который будет выполняться при запуске этого файла JAR. Вам также потребуется по крайней мере минимальный объем конфигурации Spring для начальной загрузки приложения. Это то, что вы найдете в классе TacoCloudApplication, показанном в следующем списке.

 

Листинг 1.2 Taco Cloud bootstrap class

 

package tacos;

 

import org.springframework.boot.SpringApplication;


import org.springframework.boot.autoconfigure.SpringBootApplication;



@SpringBootApplication


public class TacoCloudApplication {


   public static void main(String[] args) {


      SpringApplication.run(TacoCloudApplication.class, args);


   }


}

 

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

 

@SpringBootApplication - это составное приложение, которое объединяет три других аннотации:

 

- @SpringBootConfiguration - обозначает, что этот класс является классом конфигурации. Несмотря на то, что в классе еще не так много конфигурации, при необходимости можно добавить Java-based Spring Framework конфигурацию. Эта аннотация является, фактически, специализированной формой аннотации @Configuration. 

 

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

 

- @ComponentScan - включает сканирование компонентов. Это позволяет объявлять другие классы с аннотациями, такими как @Component, @Controller, @Service и другими, чтобы Spring автоматически обнаруживала их и регистрировала как компоненты в контексте приложения Spring.

 

Другой важной частью TacoCloudApplication является метод main(). Это метод, который будет выполняться при выполнении файла JAR. По большей части, этот метод шаблонный код; каждое приложение Spring Boot, которое вы пишете, будет иметь метод, аналогичный или идентичный этому (за исключением различий в именах классов).


Перейти на страницу:

Похожие книги

Теория государства и права
Теория государства и права

В четвертое издание учебника включен ряд новых вопросов, которые до сих пор не рассматривались в курсе «Теория государства и права», но приобрели в последнее время значительную актуальность. Изучение этих вопросов поможет студентам в формировании юридического мышления, творческого подхода к приобретению юридических знаний, самостоятельности в суждениях и оценках государственно-правовой действительности.Учебник полностью соответствует Государственному образовательному стандарту, программе дисциплины «Теория государства и права» для юридических вузов. Темы излагаются в последовательности, которая доказала свою целесообразность в учебном процессе и ориентирует на эффективное усвоение основополагающих понятий, категорий и юридических конструкций.Для студентов всех форм обучения юридических вузов, слушателей других учебных заведений юридического профиля, преподавателей и аспирантов.

Людмила Александровна Морозова

Юриспруденция / Учебники и пособия / Прочая научная литература / Образование и наука
История России
История России

Издание описывает основные проблемы отечественной истории с древнейших времен по настоящее время.Материал изложен в доступной форме. Удобная периодизация учитывает как важнейшие вехи социально-экономического развития, так и смену государственных институтов.Книга написана в соответствии с программой курса «История России» и с учетом последних достижений исторической науки.Учебное пособие предназначено для студентов технических вузов, а также для всех интересующихся историей России.Рекомендовано Научно-методическим советом по истории Министерства образования и науки РФ в качестве учебного пособия по дисциплине «История» для студентов технических вузов.

Александр Ахиезер , Андрей Викторович Матюхин , И. Н. Данилевский , Раиса Евгеньевна Азизбаева , Юрий Викторович Тот

Педагогика, воспитание детей, литература для родителей / Детская образовательная литература / История / Учебники и пособия / Учебная и научная литература
История американской культуры
История американской культуры

Данное учебное пособие по истории культуры США – относительно краткой, но безусловно яркой – написано почитателями и знатоками этой страны, профессорами Т. Ф. Кузнецовой и А. И. Уткиным. Авторы подробно прослеживают, как колонисты, принесшие на новый континент дух старой Англии и идеи религиозного протестантизма, за четыре века интенсивного развития и приема иммигрантов сумели сделать мир своей культуры и разнообразным, и глубоким. Единственная крупная страна, не знавшая феодализма, США заняли видное место в мировой литературе, киноискусстве, архитектуре, популярной музыке, а также в философии, юриспруденции, естественных и технических науках.Учебник рассчитан на студентов, специализирующихся в культурологии и американистике, но как источник расширения представлений об общественной истории, о выдающемся созидательном опыте человечества будет полезен студентам любого профиля, а также широкому кругу читателей, интересующихся историей и культурой.

Анатолий Иванович Уткин , Татьяна Федоровна Кузнецова

Учебники и пособия