@SpringBootApplication是我们最常用的注解,通过它就能对我们的项目进行自动装配

准确的说是靠它内部组合的@EnableAutoConfiguration注解来开启的自动装配功能。

在启动Spring应用程序上下文时开启自动配置,@EnableAutoConfiguration会尝试加载并配置当前项目可能需要的Bean。自动配置是基于当前项目类路径下引用的类和已定义的Bean来实现的,自动配置的组件来自于当前项目自身以及其所依赖的 jar 包中。

整个自动配置的核心功能是靠@EnableAutoConfiguration注解内部组合的@Import注解导入的 AutoconfigurationImportSelector来做的。

@Conditional注解,这个是Spring4.0版本的新特性,可根据指定的生效条件,来决定对某个Bean是否进行实例化和装配,比如:当前类路径下存在指定 jar包时,才会对使用该注解的类进行实例化和装配,简单说:根据一些特定条件来控制某个Bean实例化的行为。

@ComponentScan注解,@SpringBootApplication 依靠其内部组合的 @ComponentScan 注解来扫描当前引导类所在的包及其子包,目的是:将我们用注解标记的需要放入IOC容器中的Bean,帮助我们自动放入容器中。

更多推荐

SpringBoot常用注解面试题,标准答案