当前位置: 首页 > news >正文

Spring 梳理 - @Autowired VS @Resource

  1. Autowired
    1. @Autowired顾名思义,就是自动装配,其作用是为了消除代码Java代码里面的getter/setter与bean属性中的property。当然,getter看个人需求,如果私有属性需要对外提供的话,应当予以保留。

    2.  

      这里@Autowired注解的意思就是,当Spring发现@Autowired注解时,将自动在代码上下文中找到和其匹配(默认是类型匹配)的Bean,并自动注入到相应的地方去。

    3. @Autowired(required = false)
    4. public class TestServiceImpl {
          // 下面两种@Autowired只要使用一种即可
          @Autowired
          private UserDao userDao; // 用于字段上
          
          @Autowired
          public void setUserDao(UserDao userDao) { // 用于属性的方法上
              this.userDao = userDao;
          }
      }

       

    5. @Autowired接口注入
      1. 接口有两个实现类,Spring并不知道应当引用哪个实现类。这种情况通常解决办法:
      2. 使用@Qualifier注解,注意@Qualifier注解Car接口实现类的类名,不是bean的名称
      3.     @Autowired
            @Qualifier("BMW")
            private Car car;

         

  2. @Resource
    1. @Resource 与 @Autowired功能相似
    2. 默认通过name属性去匹配bean,找不到再按type去匹配
    3. 可以指定name或者type
      1.     @Resource(name = "xxx")
            private Yyy  y1;
            
            @Resource(type = Yyy.class)
            private Yyy y2;

         

  3. @Resource  VS  @Autowired
    1. 、@Autowired是Spring的注解,@Resource是J2EE的注解

转载于:https://www.cnblogs.com/jiangtao1218/p/10201439.html

相关文章:

  • 扩展
  • linux安装mysql以及修改密码和重启mysql等相关命令
  • http状态码的含义及502, 503和504的区别
  • Quartz.Net进阶之六:详述 JobStores
  • DB-MySQL:MySQL 处理重复数据
  • 【[HEOI2016/TJOI2016]游戏】
  • iOS调用系统发送短信和邮件分享
  • ORM简介
  • Qt支持哪些硬件通信协议???
  • 不用代理IP加快速度会被封吗?
  • 基于zookeeper实现分布式锁
  • 微信小程序之----接口调用方式
  • django 的后台管理
  • Vue 目录
  • 蒟蒻的作文
  • @angular/forms 源码解析之双向绑定
  • [case10]使用RSQL实现端到端的动态查询
  • 2017届校招提前批面试回顾
  • 2017前端实习生面试总结
  • co模块的前端实现
  • Git学习与使用心得(1)—— 初始化
  • iOS编译提示和导航提示
  • Java IO学习笔记一
  • Spring思维导图,让Spring不再难懂(mvc篇)
  • Vue.js 移动端适配之 vw 解决方案
  • Vue组件定义
  • 翻译 | 老司机带你秒懂内存管理 - 第一部(共三部)
  • 给Prometheus造假数据的方法
  • 容器化应用: 在阿里云搭建多节点 Openshift 集群
  • 深度学习中的信息论知识详解
  • 深入浅出webpack学习(1)--核心概念
  • 使用common-codec进行md5加密
  • 使用Envoy 作Sidecar Proxy的微服务模式-4.Prometheus的指标收集
  • 智能网联汽车信息安全
  • Java性能优化之JVM GC(垃圾回收机制)
  • 第二十章:异步和文件I/O.(二十三)
  • #我与Java虚拟机的故事#连载05:Java虚拟机的修炼之道
  • (20)目标检测算法之YOLOv5计算预选框、详解anchor计算
  • (5)STL算法之复制
  • (6)【Python/机器学习/深度学习】Machine-Learning模型与算法应用—使用Adaboost建模及工作环境下的数据分析整理
  • (js)循环条件满足时终止循环
  • (NO.00004)iOS实现打砖块游戏(十二):伸缩自如,我是如意金箍棒(上)!
  • (翻译)Entity Framework技巧系列之七 - Tip 26 – 28
  • (翻译)terry crowley: 写给程序员
  • (三) prometheus + grafana + alertmanager 配置Redis监控
  • (三分钟)速览传统边缘检测算子
  • (译) 函数式 JS #1:简介
  • (转)关于pipe()的详细解析
  • .htaccess配置重写url引擎
  • .mkp勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .Net 4.0并行库实用性演练
  • .net6+aspose.words导出word并转pdf
  • .NET版Word处理控件Aspose.words功能演示:在ASP.NET MVC中创建MS Word编辑器
  • :O)修改linux硬件时间
  • @Documented注解的作用