SpringBoot的@Resource和@Autowired+@Qualifier使用
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使用的更多相关文章
- Spring 注解 @Resource和@Autowired
		
@Resource和@Autowired两者都是做bean的注入使用. 其实@Resource并不是Spring的注解,他的包是javax.annotation.Resource 需要导入.但是Spr ...
 - @Resource、@Autowired、@Qualifier的注解注入及区别
		
在Java代码中可以使用 @Resource 或者 @Autowired 注解方式来进行注入. 虽然 @Resource 和 @Autowried 都可以完成依赖注入,但是他们是有区别的. 一: @ ...
 - Spring @Resource、@Autowired、@Qualifier的注解注入及区别
		
spring2.5提供了基于注解(Annotation-based)的配置,我们可以通过注解的方式来完成注入依赖.在Java代码中可以使用 @Resource或者@Autowired注解方式来经行注入 ...
 - Spring中@Resource与@Autowired、@Qualifier的用法与区别
		
1.@Autowired与@Resource都可以用来装配bean. 都可以写在字段上,或写在setter方法上. 2.@Autowired默认按类型装配(这个注解是属业spring的),默认情况下必 ...
 - Spring @Resource,@Autowired,@Qualifier的注解注入和区别
		
spring2.5提供了基于注解(Annotation-based)的配置,我们可以通过注解的方式来完成注入依赖.在Java代码中可以使用 @Resource或者@Autowired注解方式来经行注入 ...
 - Spring注解@Component、@Repository、@Service、@Controller @Resource、@Autowired、@Qualifier、@scope
		
以下内容摘自部分网友的,并加上了自己的理解 @Service用于标注业务层组件(我们通常定义的service层就用这个) @Controller用于标注控制层组件(如struts中的action.Sp ...
 - @Resource、@Autowired、@Qualifier 区别(表格显示)
		
@Resource.@Autowired.@Qualifier 区别(表格显示) 区别项 @Resource @Autowired @Qualifier 谁提供的 jdk提供,包是javax.anno ...
 - Rhythmk 一步一步学 JAVA (14) Spring-3 @Autowired,@Qualifier @Required @Resource @Component,@Service,@Controller,@Repository @PostConstruct,@PreDestroy
		
1.@Autowired 注解:首先在使用时候需要引入配置: <!-- 该 BeanPostProcessor 将自动起作用,对标注 @Autowired 的 Bean 进行自动注入 --> ...
 - Spring中@Resource与@Autowired、@Qualifier的用法与区别(转)
		
1.@Autowired与@Resource都可以用来装配bean. 都可以写在字段上,或写在setter方法上. 2.@Autowired默认按类型装配(这个注解是属业spring的),默认情况下必 ...
 - Spring学习----自动装配@Resource、@Autowired、@Qualifier
		
直接看下面的代码即可明白: applicationContext.xml里面添加个bean: <!--注解的注入 --> <bean id="student3" ...
 
随机推荐
- AMD、request.js,生词太多,傻傻搞不清
			
前言 之前在公司用JS写前端页面,本来自己是一个写后端的,但是奈何人少,只能自己也去写了.但是自己对前端基本不懂,基本就是照着前人写的照着抄,反正大体意思是明白的,但是出现问题了,基本上也是吭哧吭哧好 ...
 - KingbaseES 中select for update语句引起的锁问题
			
背景 客户现场执行压测时候,发生周期性的TPS大幅下降,通过查看kwr报告发现DBcpu时间占DBtime时间很少,百分之90的DBtime花费在tuple锁等待上,等待事件类型是lock. 等待时间 ...
 - jsonb操作符
			
json类型以文本方式存储json对象,把输入的数据原封不动的存放到数据库中,会保留多余的空格,保留重复的Key,保留Key的顺序. jsonb类型转换文本格式json对象为二进制格式,不保留多余的空 ...
 - KingbaseES V8R3集群运维案例之---备库状态‘down’修复
			
 案例说明: Kingbase V8R3集群,集群启动正常,备库数据库服务正常,流复制状态正常.但是备库在show pool_nodes下查看是'down'状态,通过pcp_attach_node重 ...
 - JWT 安全令牌
			
1 package com.reliable.yang.utils; 2 3 import io.jsonwebtoken.Jwt; 4 import io.jsonwebtoken.JwtBuild ...
 - 使用OHOS SDK构建filament
			
参照OHOS IDE和SDK的安装方法配置好开发环境. 从gitee下载源码. 执行如下命令: git clone https://gitee.com/oh-graphics/filament.git ...
 - el-table边框颜色修改—骨灰级
			
一.前言说明 1. 网上很多都是通过上下左右边框方式,如: .el-table { border-bottom: 1px solid black; border-right: 1px solid bl ...
 - 深入了解 Python MongoDB 查询:find 和 find_one 方法完全解析
			
在 MongoDB 中,我们使用 find() 和 find_one() 方法来在集合中查找数据,就像在MySQL数据库中使用 SELECT 语句来在表中查找数据一样 查找单个文档 要从MongoDB ...
 - 【FAQ】用户访问次数不变,访问时长却突增2倍,分析服务发生数据异常该如何解决?
			
在产品运营的工作过程中,需要每日关注产品的核心指标变化情况,监控其整体运营状况.华为分析服务提供查看吸引新用户卡片,该卡片展示了新增用户数.人均会话次数.人均访问时长.人均页面访问数.借助该页面运营可 ...
 - 国产开源数据库OpenGauss的安装运行
			
步骤一:OpenGauss 的安装 环境 OS:openEuler 20.03 64bit with ARM 架构:arm64 部署:单机 安装过程 1.环境配置 安装依赖包: yum install ...