@Autowired 和 @Resource 区别的补充说明与示例

参考

补充说明与总结

  • @Resource 有两个属性 name 和 type。
    • 可以指定特定的子类实现
  • @Autowired 没有属性指定。
    • 如果涉及到 type 无法辨别注入对象时,需要依赖 @Qualifier@Primary 注解来修饰
  • 但两者都可以通过 name 或 type 容错识别

示例

java 复制代码
    @Resource(name = "testImpl2")        // 只有一个实现类时,可以不设置 name 或 type
    // @Resource(type = TestImpl1.class)
    ITest obj;
    @Resource
    TestImpl1 testImpl; // type 可识别
    @Resource
    ITest testImpl2;    // name 可识别

    @Autowired
    @Qualifier("testImpl2")
    ITest obj;
    @Autowired
    TestImpl1 testImpl; // type 可识别
    @Autowired
    ITest testImpl2;    // name 可识别
相关推荐
智能零售小白白1 分钟前
零售多门店库存调拨优化:需求预测与路径规划的技术实现
java·开发语言·零售
前路不黑暗@4 分钟前
Java项目:Java脚手架项目的意义和环境搭建(一)
java·开发语言·spring boot·学习·spring cloud·maven·idea
Seven9713 分钟前
LockSupport深度解析:线程阻塞与唤醒的底层实现原理
java
组合缺一15 分钟前
OpenSolon v3.9.3, v3.8.5, v3.7.5, v3.6.8 年货版发布
java·人工智能·分布式·ai·llm·solon·mcp
uesowys26 分钟前
华为OD算法开发指导-二级索引-Read and Write Path Different Version
java·算法·华为od
小比特_蓝光31 分钟前
STL小知识点——C++
java·开发语言·c++·python
xq952733 分钟前
leetcode 算法之合并两个有序数组
java
beata36 分钟前
Java基础-11:充分理解Collection和Map接口集合底层实现和避坑指南
java·后端
消失的旧时光-194339 分钟前
第二十二课:领域建模实战——订单系统最小闭环(实战篇)
java·开发语言·spring boot·后端
J_liaty42 分钟前
Java Stream流常用方法归纳整理
java·stream