首先@Component
相当于我们使用配置文件的时候,配置文件中的一个<bean id="" class=""/>
,里面的id默认是小写类名
@Controller、@Service、@Repository
就作用来说和@Component
是一样的,不过它们还分别标注控制层、服务层、数据访问层,他们都会被交给spring进行管理,并且会被按照spring的单例模式进行一次创建之后多次注入使用的对象
@AutoWired、@Resource
都是可以进行自动注入,如果想使用@AutoWired自动注入,必须要在类上加上@Controller、@Service、@Repository、@Component几个中的一个,因此网友说@Autowired属于spring的,只有在类上添加以上几个注解,才会把这些类交给spring去创建和管理,那我们才能在该类中使用@Autowired注解,而@Resource是属于jdk的,但是一般使用@Resource的时候还是在@Controller、@Service、@Repository、@Component这几个注解下面的
对于@Autowired和@Resource的区别请看:https://blog.csdn.net/qq_42449963/article/details/109025556