@Resource注解与@Autowired注解使用

@Resource注解与@Autowired注解使用
1:@Autowired
1.@Autowired 的意思就是自动装配,其作用是为了消除代码Java代码里面的getter/setter与bean属性中的property。
2.@Autowired默认按类型匹配的方式,在容器查找匹配的Bean,当有且仅有一个匹配的Bean时,Spring将其注入@Autowired标注的变量中。同时也可和其他注解联合使用如:Qualifier(指定注入Bean的名称)
2:@Resource
@Resource注解与@Autowired注解作用非常相似,都是自动装配。
1.@Resource后面没有任何内容,默认通过name属性去匹配bean,找不到再按type去匹配
2.指定了name或者type则根据指定的类型去匹配bean
3.指定了name和type则根据指定的name和type去匹配bean,任何一个不匹配都将报错

3:@Autowired和@Resource两个注解的区别:
@Autowired默认按照byType方式进行bean匹配,@Resource默认按照byName方式进行bean匹配
ps:个人建议
@Autowired是Spring的注解,@Resource是J2EE的注解,Spring属于第三方的,J2EE是Java自己的东西,因此,建议使用@Resource注解,以减少代码和Spring之间的耦合。

你可能感兴趣的:(spring注解,spring注解)