Spring Boot自动配置原理分析

 1.@SpringBootConfiguration注解

@Configuratin注解是Spring框架提供的,表示当前类是一个配置类。

@SpringBootConfiguration注解和 @Configuratin注解都是标识一个可以被组件扫描器扫描的配置类,

只不过@SpringBootConfiguration是被Spring Boot进行了重新的命名和封装。

2.@EnableAutoConfiguration注解

@EnableAutoConfiguration注解是一个组合注解,由@AutoConfigurationPackage注解和

@Import({AutoConfigurationImportSelector.class})注解组成。

(1)@AutoConfigurationPackage注解

该注解的主要作用是获取项目主程序类的根目录,从而指定后续组件扫描器要扫描的包位置。

(2)@Import({AutoConfigurationImportSelector.class})注解

 

3.@ComponentScan注解

@ComponentScan注解是一个组件包扫描器,用于将指定包中的注解类自动装配到Spring的Bean容器中。

@ComponentScan注解具体扫描的包的根路径由Spring Boot项目主程序类所在包位置决定,在扫描过程中,

由@AutoConfigurationPackage注解进行解析,从而得到Spring Boot项目主程序启动类所在包的具体位置。

猜你喜欢

转载自www.cnblogs.com/my-program-life/p/12181488.html