SpringBoot自动装配的原理
Posted java从入门到精通
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot自动装配的原理相关的知识,希望对你有一定的参考价值。
1.SpringApplication.run(AppConfig.class,args);执行流程中有refreshContext(context);这句话.
2.refreshContext(context);内部会解析我们的配置类上的标签.实现自动装配功能的注解@EnableAutoConfiguration
3.会解析@EnableAutoConfiguration这个注解里面的@Import引入的配置类.AutoConfigurationImportSelector
4.AutoConfigurationImportSelector这个类中有这个方法.SpringFactoriesLoader.loadFactoryNames(getSpringFactoriesLoaderFactoryClass(), getBeanClassLoader());
5.SpringFactoriesLoader.loadFactoryNames的作用就是读取jar包中的/项目中的META-INF/spring.factories文件.
6.spring.factories配置了自动装配的类.比如:com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure
7.根据条件给我们自动装配Bean
以上是关于SpringBoot自动装配的原理的主要内容,如果未能解决你的问题,请参考以下文章