Spring(3.2.3) - Beans(9): @Resoure & @Autowired
@Resource 和 @Autowired 都是用来装配依赖的,它们之间有些异同。
@Resoure
- @Resource 是 JSR-250 规范的注解。
- @Resource 可以标注在字段、方法上,但不可以标注在构造方法上。
- 默认情况下,@Resource 按依赖的名称进行装配。@Resource 与 <property/> 元素的 ref 属性的效果相同。
- @Resource 的装配顺序
- 如果同时指定了 name 和 type 属性,则从 Spring 容器中查找唯一匹配的 Bean 进行装配,找不到则抛出异常。
- 如果只指定了 name 属性,则从 Spring 容器中查找名称(id)匹配的 Bean 进行装配,找不到则抛出异常。
- 如果只指定了 type 属性,则从 Spring 容器中查找类型匹配且唯一的 Bean 进行装配,找不到或者找到多个,都会抛出异常。
- 如果没有指定 name 和 type 属性,则自动按照 byName 方式进行装配。如果没有匹配,则回退为一个原始类型进行匹配;如果匹配则自动装配。
@Autowired
- @Autowired 是 Spring 的注解。
- @Autowired 可以标注在字段、方法上,也可以标注在构造方法上。
- 默认情况下,@Autowired 按照依赖的类型进行装配。如果 Spring 容器中包含多个该类型的实例,那么容器会抛出 BeanCreationException 异常。
- 为实现精确装配,@Autowired 可以和 @Qualifier 结合使用。@Autowired @Qualifier("xxx") 相当于 @Resource("xxx")。
- 默认情况下, @Autowired 要求依赖对象必须存在,如果要允许 null 值,可以设置它的 required 属性为 false,例如:@Autowired(required=false)。
Spring(3.2.3) - Beans(9): @Resoure & @Autowired的更多相关文章
- org.springframework.beans.factory.annotation.Autowired(required=true)
Injection of autowired dependencies failed ERROR org.springframework.web.context.ContextLoader - Co ...
- springtest mapper注入失败问题解决 {@org.springframework.beans.factory.annotation.Autowired(required=true)}
花费了一下午都没有搜索到相关解决方案的原因,一是我使用的 UnsatisfiedDependencyException 这个比较上层的异常(在最前面)来进行搜索, 范围太广导致没有搜索到,而且即便是有 ...
- Spring课程 Spring入门篇 4-4 Spring bean装配(下)之Autowired注解说明3 多选一 qualifier
本节主要讲述以下内容: 1 简述 2 代码演练 2.1 注解qualifier运用 1 简述 1.1 何种情况使用qualifier注解? a 按类型自动装配多个bean实例,可以用@qualifie ...
- Spring课程 Spring入门篇 4-3 Spring bean装配(下)之Autowired注解说明2 集合运用
课程链接: 本节主要讲了以下几块内容 1 注解相关解析 2 代码演练 集合for循环的使用 2.1 list集合应用 2.2 map集合应用 2.3 集合排序(只对list有效,对map无效(list ...
- Spring课程 Spring入门篇 4-2 Spring bean装配(下)之Autowired注解说明1
课程链接: 1 解析 2 代码演练 1 解析 1.1 @Required注解 该注解适用于bean属性的set方法 1.2 @Autowired 作用: 是为了把依赖的对象,自动的注入到bean里 使 ...
- spring in action 学习笔记五:@Autowired这个注解如何理解
@Autowired这个注解的意思就是自动装配.他把一个bean对象自动装配到另一个对象中.下面的案例证明了spring的自动装配. 定义一个Sixi类.代码如下: package com.qls.a ...
- spring boot: scope (一般注入说明(一) @Autowired注解)
实例一: DiConfig 文件: package di; import org.springframework.context.annotation.ComponentScan; import or ...
- Spring学习十----------Bean的配置之Autowired注解实现
© 版权声明:本文为博主原创文章,转载请注明出处 @Required -@Required注解适用于bean属性的setter方法 -这个注解仅仅表示,受影响的bean属性必须在配置时被填充,通过在b ...
- Java-Class-@I:org.springframework.beans.factory.annotation.Autowired
ylbtech-Java-Class-@I:org.springframework.beans.factory.annotation.Autowired 1.返回顶部 2.返回顶部 1. pack ...
随机推荐
- MFC拆分窗口及它们之间的数据交换(转)
转自:http://blog.csdn.net/nuptboyzhb/article/details/7455471 源代码:http://download.csdn.net/detail/nuptb ...
- git乱码问题
直接看连接吧. http://my.oschina.net/lujian863/blog/168837
- Bootstrap 列偏移\列嵌套\列排序
1.列偏移 这个其实很简单就是通过一个样式类,通过.col-md-offset-*可以将列偏移到右侧.这些class通过使用*选择器将所有列增加了列的左侧margin.例如,.col-md-offse ...
- RT-Thread学习笔记(2)
这段时间稍微折腾了一下stm32,稍微知道了一点stm32程序的编写方法,所以再次拿起了rtt,因为这个东西确实很强大. 随手记录一下rtt的一些知识: 1.关于finsh 这是一个命令行系统,很好玩 ...
- 数据挖掘十大经典算法(9) 朴素贝叶斯分类器 Naive Bayes
贝叶斯分类器 贝叶斯分类器的分类原理是通过某对象的先验概率,利用贝叶斯公式计算出其后验概率,即该对象属于某一类的概率,选择具有最大后验概率的类作为该对象所属的类.眼下研究较多的贝叶斯分类器主要有四种, ...
- UIDatePicker的时间选择器里的时区的问题
转自:http://www.cocoachina.com/bbs/simple/?t70445.html 初始化代码: - (void)viewDidLoad { [super viewDidLoad ...
- cisco路由器配置教程
配置cisco路由器 经过几十年的发展,从最初的只有四个节点的ARPANET发展到现今无处不在的Internet,计算机网络已经深入到了我们生活当中.随着计算机网络规模的爆炸性增长,作为连接设备的路由 ...
- vi/vim使用进阶: 剑不离手 – quickfix
转载:http://easwy.com/blog/archives/advanced-vim-skills-quickfix-mode/ 本节所用命令的帮助入口: :help quickfix :he ...
- CentOS 安装中文输入法
转载:http://blog.sina.com.cn/s/blog_9f1c093101019h03.html centos 6.3用yum安装中文输入法 1.需要root权限,所以要用root登录 ...
- C语言第二节概述
学前提醒 其实iOS开发就是开发iPhone\iPad上的软件,而要想开发一款软件,首先要学习程序设计语言 iOS开发需要学习的主要程序设计语言有:C语言.C++.Objective-C,其中C++. ...