1. Spring Boot 高级
1.1 @SpringBootApplication
@SpringBootApplication 是一个组合注解,由以下三个注解组成
-
@SpringBootConfiguration
-
@ComponentScan
-
@EnableAutoConfiguration
下面分别讲解 @SpringBootConfiguration 与 @EnableAutoConfiguration
1) @Configuration
@SpringBootConfiguration 又被标注了 @Configuration 注解,此注解表示被标注的类是一个【配置类】,在它内部可以定义 @Bean 来管理自己的或第三方的 bean,例如
@Configuration
public class MyConfig1 {
@Bean
public MyBean myBean(){
return new MyBean();
}
}
-
当项目规模较大时,把所有的配置都集中在引导类中不方便管理,此时可以拆分为多个 @Configuration 配置类
-
标注了 @Configuration 的 MyConfig1 本身也作为一个 bean 被 Spring 引导类扫描到,它可以视为其它 @Bean 的工厂,那些标注了 @Bean 的方法即为工厂方法
-
引导类因为间接标注了 @Configuration,因此引导类本质上也是一个配置类