- org.springframework.boot.autoconfigure.EnableAutoConfiguration 启用spring应用上下文的自动配置。它试图猜测和配置你很可能需要的bean。通常基于你的类路径和你已经定义了什么样的bean来应用自动配置类。例如,如果在你的类路径下面有
tomcat-embedded.jar
,那么你有可能想要一个TomcatServletWebServerFactory。 - 当使用@SpringBootApplication的时候,上下文的自动配置会自动启用;此时再增加@EnableAutoConfiguration没有什么额外的作用。
- 你可以使用注解的exclude()属性或excludeName()属性来排除某些你从来不会使用的配置。你也可以使用
spring.autoconfigure.exclude
属性来排除。自动配置总是在用户定义的bean注册之后应用。 - 被@EnableAutoConfiguration注解(通常通过@SpringBootApplication)的类所在的包有特定的意义,通常用作一个默认包。例如,当扫描@Entity类的时候就会用到。通常推荐的做法是将@EnableAutoConfiguration(如果你没有使用@SpringBootApplication的话)用在一个根包中,这样所有的子包和类可以被搜索到。
- 自动配置类是常规的Spring @Configuration bean,使用ImportCandidates来定位它们。通常自动配置bean是 @Conditional bean(最常见的是用@ConditionalOnClass和@ConditionalOnMissingBean注解)
spring的@EnableAutoConfiguration注解
于 2024-01-30 10:08:17 首次发布