Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的?
核心注解是@SpringBootApplication,它主要由@SpringBootConfiguration,@EnableAutoConfiguration和@ComponentScan这三个构成
@SpringBootConfiguration里面就只有一个@Configuration主要注解,也就是把该类变成一个配置类所以@SpringBootConfiguration就相当于@Configuration。@EnableAutoConfiguration是由@AutoConfigurationPackage和@Import(EnableAutoConfigurationImportSelector.class)这两个组成的@AutoConfigurationPackage是自动配置包,包括了一个@Import注解,给容器导入了自动配置包的注册器,AutoConfigurationPackages.Registrar.class:将主启动类的所在包及包下面所有子包里面的所有组件扫描到Spring容器
@Import(AutoConfigurationImportSelector.class):导入自动配置导入选择器组件,AutoConfigurationImportSelector.class:自动配置导入选择器,主要是从类路径下的META-INF/spring.factories中获取资源
通过SpringFactoriesLoader 类的loadFactoryNames静态方法加载出配置文件

@ComponentScan:扫描包,该注解默认会扫描该类所在的包下所有的配置类
版权声明:本文为Actor2原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。