@Autowired使用中的问题及@Qualifire的使用
来源:互联网 发布:ubuntu 休眠设置 编辑:程序博客网 时间:2024/06/16 20:20
当使用@Autowired注解进行自动注时,Spring容器中匹配的Bean数目有且只有一个,否则将抛出BeanCrantionException异常。
问题一:没有相匹配的Bean
为解决这个问题,可以使用@Autowired(required=false),这就等于告诉Spring,在找不到匹配的Bean是也不报错。由于一般情况下使用@Autowired的地方都是需要注入Bean的,所以一般很少会用到。
问题二:有多个相匹配的Bean
解决方式:使用@Qualifier注释指定注入Bean的名称
格式:@Qualifier(“Bean的名称”)
@Autowired和@Qualifier结合使用,自动注入就从byType转变成byName。@Autowired可以对成员变量、方法以及构造函数进行注释,而@Qualifier的标注对象是成员变量、方法入参、构造函数入参。
@Qualifier只能和@Autowired结合使用,是对@Autowired补充,@Qualifire对方法入参进行注释会降低代码的可读性,而对成员变量的注释会相对好一些。
对成员变量使用 @Qualifier 注释 public class Boss {
@Autowired
private Car car;
@Autowired
@Qualifier("office")
private Office office;
…
}
对构造函数变量使用 @Qualifier 注释 public class Boss {
private Car car;
private Office office;
@Autowired
public Boss(Car car , @Qualifier("office")Office office){
this.car = car;
this.office = office ;
}
}
对方法入参使用 @Qualifier 注释
(使用 @Qualifier 注释指定注入 Bean 的名称) @Autowired
public void setOffice(@Qualifier("office")Office office) {
this.office = office;
}
- @Autowired使用中的问题及@Qualifire的使用
- Autowired的使用
- Spring @Autowired的使用
- Autowired注解的使用
- @Autowired注解的使用
- Spring 中@Autowired的使用。
- 随笔-spring中的@Autowired无效的问题
- @autowired与@qualifer的使用区别备忘
- spring的注解使用,Autowired和Qualifier
- @Autowired与@Qualifer的使用区别备忘
- @Repository @Service 和@Autowired 的使用
- spring @Autowired @Quatifier @Resource的使用
- ant中的tstamp的使用及eclipse的调试问题
- 静态 方法中使用Autowired注解的service或dao的问题
- 使用@Autowired注解
- spring @Autowired使用
- 6.使用@Autowired注解
- 关于Struts在Spring中使用autowired 自动注入的问题
- VMware中安装VMware Tools
- 项目____form提交数据,action中接收相关(含ID NAME区别及用法)
- matlab自带的分类器对人脸、鼻子、嘴进行检测
- C++Primer第五版 练习11.24(解答)
- Delphi XE7 开发Android对话框方式
- @Autowired使用中的问题及@Qualifire的使用
- [转载]jQuery学习之prop和attr的区别
- linux 内核与用户空间通信之netlink使用方法
- nginx proxy超时报错 upstream timed out (110: Connec...
- [IOS 开发] AFNetworking2.2 setReachabilityStatusChangeBlock检测网络连接状态
- AFNetworking2.0源码解析<二>
- C++Primer第五版 练习11.25(解答)
- VMware Fusion DHCP方式下如何指定虚拟机IP地址
- Connection for controluser as defined in your configuration failed phpmyadmin xampp