首先springboot注解的名称的命名都是见名知意的,component是组件的意思,scan是扫描的意思,合起来就是组件扫描。也就是将组件进行扫描,然后放到spring容器中进行管理。
那什么时候需要用到呢?
当项目启动的时候呢,springboot会自动扫描springbootApplication启动所在的目录及其子目录下的bean组件到spring容器里面进行管理,当我们需要用到的时候,就可以直接通过注入的方式获取bean对象。比如@Autowired @ Qualifier @Resource ,但是如果不在这个指定的目录前提下,你要直接使用@Autowired @ Qualifier @Resource这些注解注入bean对象的话,或者使用@Component、@Bean、@Service、@Mapper这些注解交给spring容器的话,都是不行的。
所以在这个情况下就必须加上@ComponentScan注解