1、两者都是Spring在注入对象时使用的注解。
2、两者的区别:
(1)@Resource注解时JDK自带的,而@Autowired注解是Spring框架中是实现的。
(2)默认的装配方式不一样,@Resource默认按照名称来注入;@Autowired默认按照类型来注入。
3、当service中一个接口有两个实现类时,使用默认的@Autowired和@Resource都是可以的,但是需要注意的是,变量名应该和你的实现类的名字一样,但需要使用驼峰命名的形式,这杨也是可以完成注入的,而且没有问题。
@Resource
private TestService testServiceImpl2;
@Autowired
private TestService getTestServiceImpl1;
另外,也可以结合@Qualifier注解和@Autowired注解一起使用:
@Autowired(required = false)
@Qualifier("getTestServiceImpl1")
private TestService getTestServiceImpl1;



