首页 > 代码库 > @Autowired 注释与@Qualifier 注释
@Autowired 注释与@Qualifier 注释
@Service("OrganDaoIbatis ")
public class OrganDaoIbatis extends BaseDao implements IOrganDao {
@Autowired(required=false)
@Qualifier("sqlMapClient")
private SqlMapClient sqlClient = null;
@Autowired(required=false)
@Qualifier("sqlMapClient")
private SqlMapClient sqlClient = null;
使用 @Autowired(required = false)作用:
当候选 Bean 数目不为 1 时的应对方法
在默认情况下使用 @Autowired
注释进行自动注入时,Spring 容器中匹配的候选 Bean 数目必须有且仅有一个。当找不到一个匹配的 Bean 时,Spring 容器将抛出 BeanCreationException
异常,并指出必须至少拥有一个匹配的 Bean。
当然,一般情况下,使用 @Autowired
的地方都是需要注入 Bean 的,使用了自动注入而又允许不注入的情况一般仅会在开发期或测试期碰到(如为了快速启动 Spring 容器,仅引入一些模块的 Spring 配置文件),所以@Autowired(required = false)
会很少用到。
@Qualifier 注释指定注入 Bean 的名称 作用:
和找不到一个类型匹配 Bean 相反的一个错误是:如果 Spring 容器中拥有多个候选 Bean,Spring 容器在启动时也会抛出 BeanCreationException
异常。
使用Autowired时你的OrganDaoIbatis 必须以@Service或@Component注解才行。
@Autowired 注释与@Qualifier 注释
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。