Spring Boot主程序类详解
@SpringBootApplication注解:
@SpringBootConfiguration:标注在类上,表示这是一个Spring Boot的配置类
@EnableAutoConfiguration:开启自动配置功能。
@AutoConfigurationPackage:自动配置包
@Import({Registrar.class}):Spring的底层注解@Import,给容器导入一个组件;导入的组件由类Registrar来决定。
@AutoConfigurationPackage注解是将主程序类(@SpringBootApplication标注的类)所在包及其子包里面的所有组件扫描到Spring容器中。
@Import({EnableAutoConfigurationImportSelector.class}):给容器导入一个组件;导入的组件由类EnableAutoConfigurationImportSelector来决定。
这个类将需要导入的组件以全类名的方式返回,然后这些组件就会被添加到容器中。
Spring Boot在启动时从类路径的META-INF/spring.factories中获取EnableAutoConfiguration指定的值,将这些值作为自动配置类导入到容器中,自动配置类就生效了,帮我们进行自动配置工作。