从底层来讲,自动配置(auto-configuration)是通过标准的@Configuration类实现的。此外,@Conditional注解用来约束自动配置生效的条件。通常自动配置类需要使用@ConditionalOnClass和@ConditionalOnMissingBean注解,这是为了确保只有在相关的类被发现及没有声明自定义的@Configuration时才应用自动配置,具体查看spring-boot-autoconfigurearrow-up-right源码中的@Configuration类(META-INF/spring.factoriesarrow-up-right文件)。
@Configuration
@Conditional
@ConditionalOnClass
@ConditionalOnMissingBean
spring-boot-autoconfigure
META-INF/spring.factories
最后更新于6年前