SpringBoot自动注入原理初解与实现

@Configuration(@SpringBootConfiguration点开查看发现里面还是应用了@Configuration,相当于把该类作为spring的xml配置文件中的<beans>)
@EnableAutoConfiguration(实现自动装配的注解)
@ComponentScan(将标识了需要装配的类自动装配到spring的bean容器中)

打开AutoConfigurationImportSelector的源码,可以看到通过 SpringFactoriesLoader.loadFactoryNames()
把 XXX.jar/META-INF/spring.factories中每一个xxxAutoConfiguration文件都加载到容器中.

可以看到其将AutoConfigurationImportSelector.class导入了容器,借助AutoConfigurationImportSelector,@EnableAutoConfiguration可以帮助SpringBoot应用将所有符合条件的@Configuration配置都加载到当前SpringBoot创建并使用的IoC容器(注意是Configuration配置)。



小蚊子大人
原文地址:https://www.cnblogs.com/ywsheng/p/15001736.html