@Autowired

@Autowired是Spring提供的,默认按照byType 注入,也就是按bean的类型来传入。如果需要指定名字,那么需要使@Qualifier(“这是bean的名字”)

@Resource

@Resource默认按 byName 自动注入,是J2EE提供的
@Resource有两个中重要的属性:name和type 。Spring将@Resource注解的name属性解析为bean的名字,而type属性则解析为bean的类型。所以如果使用name属性,则使用byName的自动注入策略,而使用type属性时则使用byType自动注入策略。如果既不指定name也不指定type属性,这时将通过反射机制使用byName自动注入策略

@Resource装配顺序
(1) 如果同时指定了name和type,则从Spring上下文中找到唯一匹配的bean进行装配,找不到则抛出异常;
(2) 如果指定了name,则从上下文中查找名称(id)匹配的bean进行装配,找不到则抛出异常;
(3) 如果指定了type,则从上下文中找到类型匹配的唯一bean进行装配,找不到或者找到多个,都会抛出异常;
(4) 如果既没有指定name,又没有指定type,则自动按照byName方式进行装配;如果没有匹配,则回退为一个原始类型进行匹配,如果匹配则自动装配;

Springboot中@autowired和@resource注解的区别相关推荐

  1. @Autowired和@Resource注解的区别?

    谈到Spring的注解,@Autowired和@resource这两个注解不得不提.@Autowired与@Resource都可以用来装配bean. 都可以写在字段上,或写在setter方法上 那@A ...

  2. 详述 @Service 和 @Resource 注解的区别

    1 前言 在我们使用 Spring 框架的时候,注解是"不可或缺"的一部分,它帮我们脱离了配置繁琐的 XML 文件的工作,但有一点却需要我们自己去把握,那就是"3何&qu ...

  3. Spring中@Autowired和@Resource的区别

    一.定义 @Autowired 对类成员变量.方法及构造函数进行标注,完成自动装配的工作. @Resource 在语义上被定义为通过其唯一的名称来标识特定的目标组件,其中声明的类型与匹配过程无关. 如 ...

  4. @AutoWired和@Resource注解异同分析

    相同点: @AutoWired和@Resource注解都是从Spring容器中取出相应的bean对象,自动装配. 不同点: @AutoWired: 默认根据类型进行自动装配,依赖的对象必须存在,如果允 ...

  5. SpringBoot 中@Autowired 注入失效原因及解决方法

    SpringBoot 中@Autowired 注入失效原因及解决方法 1.原因分析 1.1 包没有被扫描到通过@Autowired注入的类所在的包路径不在Application启动类所在的包/子包路径 ...

  6. Spring中@Autowired注解、@Resource注解的区别

    Spring不但支持自己定义的@Autowired注解,还支持几个由JSR-250规范定义的注解,它们分别是@Resource.@PostConstruct以及@PreDestroy. @Resour ...

  7. Spring中 @Autowired注解与@Resource注解的区别

    相同点: @Resource的作用相当于@Autowired,均可标注在字段或属性的setter方法上. 不同点: (1)提供方:@Autowired是由org.springframework.bea ...

  8. @Autowired注解与@resource注解的区别(十分详细)

    背景: 今天下班路上看到一个大货车,于是想到了装配,然后脑海里跳出了一个注解@Autowired(自动装配),于是又想到最近工作项目用的都是@Resource注解来进行装配.于是本着学什么东西都要一钻 ...

  9. Spring中@Autowired和@Resource区别

    Spring可以基于注解方式配置并注入依赖.在Java代码中使用@Resource或者@Autowired注解方式注入. 1. @Resource: 1)默认按照名称装配注入,只有当找不到与名称nam ...

最新文章

  1. R绘制QQ图并解读QQ图
  2. lnmp之mysql原码编译
  3. Windows窗体编程(二)
  4. java 革命_JAVA数据库连接池的革命 -- 从BoneCP到HikariCP(转)
  5. 进程间通信 (IPC) 方法总结(三)
  6. 1、如何进行字符串常量中的字符定位_Java String:字符串常量池,我相信会有很多朋友不很理解这部分...
  7. activex控件 新对象 ocx 初始化_Office已经支持64位的树控件Treeview了
  8. sun 些命令可以将服务器设置至ok模式_Python 高手之路:从零开始打造一个Web服务器...
  9. 如何测网络稳定性_功率计如何测准极限低功率小信号
  10. 第三方接口开发(短信验证码)
  11. 如何解决CDR绘图时出现的“毛边”瑕疵问题
  12. python 图像拼接_python实现图像拼接功能
  13. 删库跑路(错误0x80070091:目录不是空的)该如何解决???还是别解决了。。。
  14. .NET爬虫获取拼多多商品价格
  15. 利用3D效果制作立体导航栏
  16. 直角坐标积分化为极坐标积分_将直角坐标系下的二次积分转换成极坐标系下的二次积分...
  17. linux格式化光盘找不到介质,Linux挂载光盘的问题解决方案(mount: you must specify the filesystemnbs...
  18. CF-Predictor安装教程
  19. 别再说你不会,规则引擎Drools了
  20. Java网络编程以及简单的聊天程序

热门文章

  1. QNAP领衔进击2014vNAS內置虚拟机横空出世
  2. 手把手教python打包exe,打包一个简易的小程序。tkinter,python初学者。编程初学者作业:用*填充出自己的名字
  3. Unity3D网络游戏0.2
  4. 我的创作纪念日(128天)
  5. macOS Xcode8安装RVM,安装Ruby,安装/卸载Cococapods全程详解
  6. 以太坊:过去、现在、未来
  7. PTA 7-1 奇偶数判断
  8. c51单片机烧录程序 控制台显示正在检测目标单片机
  9. 从小程序到小程序云开发
  10. Android弹出关闭输入法