@Component 和@ComponentScan
最近在学习springboot,有关@Component 和@ComponentScan 这两个注解根据我自己的理解总结一下,如果各位老哥觉得我的理解有什么不对的地方还请不吝赐教.
首先@Component 这个注解的作用是把我们写的bean注入到容器中,以供使用,而@ComponentScan注解的作用则是扫描包中的bean(比如:Spring不知道你定义了某个bean除非它知道从哪里可以找到这个bean,ComponentScan做的事情就是告诉Spring从哪里找到bean),由你来定义哪些包需要被扫描。一旦你指定了,Spring将会将在被指定的包及其下级包中寻找bean
@SpringBootApplication和@ComponentScan,扫描包的区别之处:
如果你的其他包都在使用了@SpringBootApplication注解的main app所在的包及其下级包,则你什么都不用做,SpringBoot会自动帮你把其他包都扫描了如果你有一些bean所在的包,不在main app的包及其下级包,那么你需要手动加上@ComponentScan注解并指定那个bean所在的包
文章借鉴:https://www.cnblogs.com/zhangbaozhong/p/11067715.html
想要具体了解这几个注解的用处,可以查阅原博主的文章,里面还有一些例子更加容易明白.