- 4
- 0
- 约5.01千字
- 约 8页
- 2025-06-03 发布于四川
- 举报
第
深入分析@Resource和@Autowired注解区别
目录引言1、用法层面分析2、概念层面分析3、源码层面分析
引言
@Resource和@Autowired都是SpringFramework中用于依赖注入的注解,但它们有几点不同:
来源不同:@Resource注解来自于J2EE规范中;而@Autowired注解是Spring框架提供的。
搜索策略不同:@Resource注解默认按照名称进行匹配查找,如果找不到,则按照类型进行匹配。而@Autowired注解默认是按照类型进行匹配,如果出现多个类型一致的实例对象,则需要指定名称。
属性不同:@Resource注解没有属性名称,只有一个name属性,表示要注入的Bean名称。而@Autowired注解有两个重要属性:required和name,其中required属性表示是否必须注入该属性,默认为true;name属性表示要注入的Bean名称。
1、用法层面分析
首先,我们创建一个接口UserService和两个实现类UserServiceImpl1和UserServiceImpl2。
publicinterfaceUserService{
voidsave();
@Service
publicclassUserServiceImpl1implem
原创力文档

文档评论(0)