@springbooApplication注解介绍,其由以下三个注解组成
1.@SpringBootConfiguration
1.1)可以看到@SpringBootConfiguration其实由@Configuration组成
1.2)@Configuration注解也由@Component注解组成
1.3)既然@Component注解和@Configuration注解作用差不多,那为啥不直接用@Component呢?
原因:spring容器在加载时,会执行一些后置处理器,假设我们自定义了一个类MyConfig加了@Configuration注解,Configuration类后置处理器会扫描到所有带有@Configuration注解的类并且做相关的处理,比如增强这个类!
1.4)用了@Configuration注解,这两个bean相同
1.5)用了@component注解,这两个bean不相同
2.@EnableAutoConfiguration
AutoConfigurationImportSelector这个类做了自动配置的功能
2.1)@Import注解实际也是导入bean的一种方式
Dog和Cat这两个Bean确实加载到了Spring容器中
3. @ComponentScan
组件扫描
如何让某些服务不被扫描?
运行结果发现,HelloService服务找不到