默认注入方式不同
@Autowired
默认的注入方式是按照类型进行匹配,会优先根据接口类型去匹配并注入 Bean,如果想要按照名称进行匹配,可以通过 @Qualifier
配合使用。
@Resource
默认注入方式为根据名称进行匹配。如果通过名称无法匹配到对应的实现类,注入方式会变为按照类型进行匹配。
提供者不同
@Autowired
是Spring提供的注解,@Resource
是JDK提供的注解。
默认情况下,@Autowired
的required
属性值为ture
,即要求必须找到匹配的Bean,否则会报异常。
如果容器中有一个以上匹配的Bean时,则可以通过@Qualifier
注解限定Bean的名称。