每日一问--@Autowired和@Resource注解的异同
@Autowired和@Resource注解的异同
(1) 相同点:
- @Autowired和@Resource注解都是作为bean对象注入的时候使用的.
- 都可以实现自动装配.
- 两者都可以声明在字段和set()方法上.
注:如果声明在字段上,那么可以不写set()方法。但是本质上,该对象还是作为se()方法的实参,通过执行set()方法注入,只是省略了set()方法.
(2) 不同点:
- @Autowired注解是Spring提供的,而@Resource注解是JavaEE本身提供的.
- @Autowird注解默认通过byType方式注入,而且必须要求这个对象存在.
- @Resource注解默认通过byName方式注入 如果找不到名字,则通过byType方式实现,如果两者都找不到,则报错.
- @Autowired注解注入的对象需要在IOC容器中存在,否则需要加上属性required=false.
学然后知不足,也只是班门弄斧
分享所学 如有侵权 请联系删除!

浙公网安备 33010602011771号