springboot自动装配的原理

@EnableAutoConfiguration实现的关键在于引入了AutoConfigurationImportSelector,其核心逻辑为selectImports方法, 逻辑
大致如下:
从spring-boot-autoconfigure包下的META-INF/spring.factories文件中加载所有可能用到的自动配置类;
去重,并将exclude和excludeName属性携带的类排除;
过滤,将满足条件(@Conditional)的自动配置类返回;