18、使用 @SpringBootApplication 注解

很多 Spring Boot 开发者总是使用 @Configuration@EnableAutoConfiguration@ComponentScan 注解标记在主类上。由于 这些注解经常一起使用(特别是如果您遵循上述的最佳实践)。Spring Boot 提供了一个更方便的 @SpringBootApplication 注解可用来替代这个组合。

@SpringBootApplication 注解相当于使用 @Configuration@EnableAutoConfiguration@ComponentScan 及他们的默认属性:

  1. package com.example.myapplication;
  2. import org.springframework.boot.SpringApplication;
  3. import org.springframework.boot.autoconfigure.SpringBootApplication;
  4. @SpringBootApplication // 相当于使用 @Configuration @EnableAutoConfiguration @ComponentScan
  5. public class Application {
  6. public static void main(String[] args) {
  7. SpringApplication.run(Application.class, args);
  8. }
  9. }

注意

@SpringBootApplication 还提供了别名来自定义 @EnableAutoConfiguration@ComponentScan 的属性。