Автоматическая конфигурация в Spring Boot существенно облегчает жизнь разработчика, исключая так называемый “настроечный boilerplate” из повседневной рутины. Для запуска и конфигурирования приложения на Spring Boot хватит двух аннотаций:
package test;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Test {
public static void main(String[] args) {
SpringApplication.run(Test.class, args);
}
Аннотация @SpringBootApplication включает сканирование компонентов и автоматическую конфигурацию приложения. На самом деле, за этой аннотацией скрывается целых три:
@Configuration(Spring) – помечает класс как конфигурационный (в контексте java-based конфигурации).@ComponentScan(Spring) – включает сканирование компонентов, то есть классы-контроллеры и другие компоненты, которые вы создаете, будут автоматически зарегистрированы как бины вapplication context.@EnableAutoConfiguration(Spring Boot) – самая магическая аннотация из всех возможных. Именно она под капотом запускает весь механизм автоматической конфигурации Spring Boot.
@SpringBootApplication впервые появилась в версии 1.2.0, до этого приходилось указывать все три аннотации из списка.
Есть несколько вариантов запуска приложений на Spring Boot. В примере выше используется метод main, который позволяет запуститься из JAR при помощи командной строки. Он передает ссылку на класс Test и аргументы командной строки в метод SpringApplciation.run(), который запускает приложение.