1、区别

参考:

https://blog.csdn.net/xhbzl/article/details/126765893

https://blog.csdn.net/qq_40263124/article/details/124238530

2、使用

2.1、注入配置类

  • 比如注入config的bean
@Configuration
public class MyThymeLeafConfig { @Resource
private ApplicationContext applicationContext; /** 自定义的bean
*/
@Bean(name = "myTemplateEngine")
public SpringTemplateEngine myTemplateEngine(){
SpringTemplateEngine templateEngine = new SpringTemplateEngine();
SpringResourceTemplateResolver templateResolver = myTemplateResolver();
templateEngine.setTemplateResolver(templateResolver);
templateEngine.setEnableSpringELCompiler(true);
return templateEngine;
}
  • 使用:@Autowired
    @Autowired
@Qualifier("myTemplateEngine")
private SpringTemplateEngine springTemplateEngine2Xml;
  • 使用:@Resource
    @Resource(name = "myTemplateEngine")
private SpringTemplateEngine springTemplateEngine1Html;

上面两种使用方法是等价的。

2.2、注入业务类、实现类

  • 略……
  • 当只有一个Impl实类的时候,随便用哪个都差不多,>=2的时候,最好用@Resource,比@Autowired + @Qualifier()效率高

3、推荐使用@Resource

  • @Autowired
效率低下,先按类型查找,再按名字查找
  • @Resource
会先按byName去找,如果没找到则会byType去找。如果设置了name属性,则只会按byName去找,找不到就报错。速度快

按名字查找,后面要跟参数name,好处:当有多个Impl实现类时,可以通name快速找到
  • 总结
当只有一个Impl实类的时候,随便用哪个都差不多,>=2的时候,最好用@Resource,比@Autowired + @Qualifier()效率高

SpringBoot的@Resource和@Autowired+@Qualifier使用的更多相关文章

  1. Spring 注解 @Resource和@Autowired

    @Resource和@Autowired两者都是做bean的注入使用. 其实@Resource并不是Spring的注解,他的包是javax.annotation.Resource 需要导入.但是Spr ...

  2. @Resource、@Autowired、@Qualifier的注解注入及区别

    在Java代码中可以使用 @Resource  或者 @Autowired 注解方式来进行注入. 虽然 @Resource 和 @Autowried 都可以完成依赖注入,但是他们是有区别的. 一: @ ...

  3. Spring @Resource、@Autowired、@Qualifier的注解注入及区别

    spring2.5提供了基于注解(Annotation-based)的配置,我们可以通过注解的方式来完成注入依赖.在Java代码中可以使用 @Resource或者@Autowired注解方式来经行注入 ...

  4. Spring中@Resource与@Autowired、@Qualifier的用法与区别

    1.@Autowired与@Resource都可以用来装配bean. 都可以写在字段上,或写在setter方法上. 2.@Autowired默认按类型装配(这个注解是属业spring的),默认情况下必 ...

  5. Spring @Resource,@Autowired,@Qualifier的注解注入和区别

    spring2.5提供了基于注解(Annotation-based)的配置,我们可以通过注解的方式来完成注入依赖.在Java代码中可以使用 @Resource或者@Autowired注解方式来经行注入 ...

  6. Spring注解@Component、@Repository、@Service、@Controller @Resource、@Autowired、@Qualifier、@scope

    以下内容摘自部分网友的,并加上了自己的理解 @Service用于标注业务层组件(我们通常定义的service层就用这个) @Controller用于标注控制层组件(如struts中的action.Sp ...

  7. @Resource、@Autowired、@Qualifier 区别(表格显示)

    @Resource.@Autowired.@Qualifier 区别(表格显示) 区别项 @Resource @Autowired @Qualifier 谁提供的 jdk提供,包是javax.anno ...

  8. Rhythmk 一步一步学 JAVA (14) Spring-3 @Autowired,@Qualifier @Required @Resource @Component,@Service,@Controller,@Repository @PostConstruct,@PreDestroy

    1.@Autowired 注解:首先在使用时候需要引入配置: <!-- 该 BeanPostProcessor 将自动起作用,对标注 @Autowired 的 Bean 进行自动注入 --> ...

  9. Spring中@Resource与@Autowired、@Qualifier的用法与区别(转)

    1.@Autowired与@Resource都可以用来装配bean. 都可以写在字段上,或写在setter方法上. 2.@Autowired默认按类型装配(这个注解是属业spring的),默认情况下必 ...

  10. Spring学习----自动装配@Resource、@Autowired、@Qualifier

    直接看下面的代码即可明白: applicationContext.xml里面添加个bean: <!--注解的注入 --> <bean id="student3" ...

随机推荐

  1. 鸿蒙HarmonyOS实战-ArkUI组件(RelativeContainer)

    一.RelativeContainer 1.概述 ArkUI组件中的RelativeContainer是一个相对定位的容器,可以用来将子组件按照相对位置布局. 在RelativeContainer中, ...

  2. vue初学核心基础02

    8.v-bind补充 8.1v-bind绑定类名 v-bind指令给"任意标签"的"任意属性"绑定数据 对于大部分的属性而言我们只需要直接赋值即可, 例如:va ...

  3. stm32F103 移植Free RTOS

    stm32F103 移植Free RTOS 1. 下载FreeRTOS 源码 [官网下载] (http://www.freertos.org) [代码托管网站下载] (https://sourcefo ...

  4. win10/11 暂停更新

    1. win+R 输入regeidt 进入注册表编辑器 2.在"计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Sett ...

  5. #AC自动机,树状数组#洛谷 2414 [NOI2011] 阿狸的打字机

    题目 分析 首先考虑按照题意建出一个AC自动机, 然后\(s[x]\)在\(s[y]\)出现的次数也就是 在fail树上,根节点到\(y\)中一共出现了多少个\(x\), 在\(x\)的终止节点处统计 ...

  6. mupdf实用操作demo,C++操作PDF文件

    前文: 最近有个项目,需要读写PDF,本来想着挺简单的,读写PDF有那么多的库可以使用,唰唰的就完成了. 忘记了我写C++的,还是在国产系统上开发的. 所以一般的东西还不好使,因为项目需要在多个架构的 ...

  7. 动态库 DLL 封装二:dll封装方法

    例:我新建的工程是,带lib的MFC规则的DLL 主要有三个文件需要写东西 ( .h /  .cpp  /  .def ) 示例: // a.h ...... #ifdef __cplusplus e ...

  8. .Net 代码分析工具对比 visual studio 2022 current

    目录 原因 背景知识 名词解释 分析器 分析器在IDE里 目标 查找思路及过程 CodeMaid Roslyn StyleCop.Analyzer StyleCop? StyleCop.Analyze ...

  9. HarmonyOS 电话服务开发指导

    电话服务开发概述 HarmonyOS 电话服务系统提供了一系列的 API 用于拨打电话.获取无线蜂窝网络和 SIM 卡相关信息. 应用可以通过调用 API 来获取当前注册网络名称.网络服务状态.信号强 ...

  10. HDC2021技术分论坛:鸿蒙智联设备开发,这五大法宝你应该拥有

    作者:zhaowenguang,dinglu, 华为高级工程师 Huawei LiteOS是轻量级的开源物联网操作系统.智能硬件使能平台,可广泛应用于智能家居.穿戴式.车联网.制造业等领域,使物联网终 ...