启动类中注解以及底层注解
启动类上的注解@SpringBootApplication
它标注在某个类上说明这个类是springboot的主配置类,springboot应该运行这个类的main方法来启动springboot应用
点进去发现它是一个组合注解
点进去
@SpringBootConfiguration
springboot配置类
里面有个@Configuration 配置类,用来配置文件
这里点进去发现这本质是个组件component
第二个注解
@EnableAutoConfiguration
开启自动配置功能(加这个注解即告诉springboot开启自动配置功能,这样自动配置才能生效)
点进去
里面有一个@AutoConfigurationPackage 自动配置包
点进去,这里有一个@Import({Registrar.class})
这里的@import就是底层注解里面的,这里是导入一组件;导入由{Registrar.class}
到@import 下面去看,在debug调试下计算一下发现
可见它的作用就是将主配置类(@SpringBootApplication标注的类)所在包以及下面所有子包中所有组件扫描到spring容器中
我们发现还有一个import
@Import({AutoConfigurationImportSelector.class})
这是导入哪些组件的选择器
我们可以看到selectImports方法,将需要导入的组件以string[]数组的方式返回全类名