@Resource和@Autowired作用和区别
区别:
1,@Resource(JSR-250标准注解,推荐使用它来代替Spring专有的@Autowired注解)
2,Spring 不但支持自己定义的@Autowired注解,还支持几个由JSR-250规范定义的注解,它们分别是@Resource、@PostConstruct以及@PreDestroy。
3,@Resource的作用相当于@Autowired,只不过@Autowired按byType自动注入,而@Resource默认按byName自动注入罢了。@Resource有两个属性是比较重要的,分别是 name和type,Spring将@Resource注解的name属性解析为bean的名字,而type属性则解析为bean的类型。所以如果使用name属性,则使用byName的自动注入策略,而使 用type属性时则使用byType自动注入策略。如果既不指定name也不指定type属性,这时将通过反射机制使用byName自动注入策略。
@Resource装配顺序
————如果同时指定了name和type,则从Spring上下文中找到唯一匹配的bean进行装配,找不到则抛出异常
————如果指定了name,则从上下文中查找名称(id)匹配的bean进行装配,找不到则抛出异常
————如果指定了type,则从上下文中找到类型匹配的唯一bean进行装配,找不到或者找到多个,都会抛出异常
————如果既没有指定name,又没有指定type,则自动按照byName方式进行装配(见2);如果没有匹配,则回退为一个原始类型(UserDao)进行匹配,如果匹配则自动装配;
转载于:https://www.cnblogs.com/Zhong-Xin/p/5463245.html
@Resource和@Autowired作用和区别相关推荐
- @Resource、@Autowired、@Qualifier区别与使用,以及bean name 的默认生成规则。
文章目录 前言 一.注解区别 1. @Autowired 2. @Qualifier 3. @Resource 二.使用三个注解 三.bean name默认生成规则 前言 一.注解区别 1. @Aut ...
- Spring @Resource、@Autowired、@Qualifier区别
@Resource默认是按照名称来装配注入的,只有当找不到与名称匹配的bean才会按照类型来装配注入: @Autowired默认是按照类型装配注入的,如果想按照名称来转配注入,则需要结合@Qualif ...
- @Resource与@Autowired注解的区别
一.写本博文的原因 年初刚加入到现在的项目时,在使用注解时我用的@Resource.后来,同事:你怎么使用@Resource注解?我:使用它有错吗?同事:没错,但是现在都使用@Autowired.我: ...
- spring 注解说明以及@Resource和@Autowired的区别
2019独角兽企业重金招聘Python工程师标准>>> 一.spring常见的注解有 @Component.@Repository.@Service.@Controller @Aut ...
- @Resource和@Autowired的区别
前言 @Resource和@Autowired都是做bean的注入时使用,@Resource的作用相当于@Autowired,只不过@Autowired按照byType自动注入. 其中@Resourc ...
- Spring注解@Resource和@Autowired区别对比
@Resource和@Autowired都是做bean的注入时使用,其实@Resource并不是Spring的注解,它的包是javax.annotation.Resource,需要导入,但是Sprin ...
- Spring中@Resource与@Autowired、@Qualifier的用法与区别
Spring中@Resource与@Autowired.@Qualifier的用法与区别 1.@Autowired与@Resource都可以用来装配bean. 都可以写在字段上,或写在setter方法 ...
- @Resource与@Autowired用法区别
spring中,@Resource和@Autowired都是做bean的注入时使用.使用过程中,有时候@Resource 和 @Autowired可以替换使用:有时,则不可以. 下面,根据自己的学习, ...
- Spring 注解 @Resource和@Autowired(转)
鸣谢:http://my.oschina.net/u/216467/blog/205951 @Resource和@Autowired两者都是做bean的注入使用. 其实@Resource并不是Spri ...
最新文章
- java arraylist 序列化_专题二、ArrayList序列化技术细节详解
- 完美解决Informix的中文乱码问题
- 26日上午网易等多家网站无法访问“剖析”
- java toolkit invoker_有没有哪位老哥愿意帮一下新人啊
- mysql设置自动递增_《MySQL数据库》约束条件和自增长序列
- 数据科学 python_为什么需要以数据科学家的身份学习Python的7大理由
- linux mysql配置文件修改编码,linux修改mysql字符集编码
- 实战oracle 12c 处理索引坏块一例
- pkill mysql_centos下kill、killall、pkill命令区别
- 新猿木子李:0基础学python培训教程 Python操作Redis之集合类型2
- RISC-V Debug Introduction
- 所见即所得编辑器_文档标记语言与所见即所得编辑器相比的优势
- 合泰单片机BH66F2652开发笔记链接
- 苹果高通 5G 开战!
- 2023北华大学计算机考研信息汇总
- 云创以炫酷软件和饕餮美食喜迎新年!
- 反激 (Flyback) 控制器 -- LTC3803
- OD 调试多线程遇到的问题以及解决方法
- 顺差和逆差,哪个好点?
- 基于Vue和SpringBoot的便利店仓库物资管理系统的设计与实现
热门文章
- in-place数据交换
- StringTokenizer(字符串分隔解析类型)
- Qt基于TCP网络程序发包封包抽象
- 中文(英译) 爱情一句话哲理
- 菜单 java_java 菜单
- python标签使用教程_怎样用Python做标签云
- CentOS 6.4安装pip,CentOS安装python包管理安装工具pip的方法
- Python执行系统命令的方法 os.system(),os.popen(),commands
- linux查看和关闭后台执行程序
- python饼状图教程_Python数据可视化:饼状图的实例讲解