首页
登录 | 注册

springmvc注解区分一个有多个实现类的借口

在变成过程中经常遇到一个实现类有许多借口的问题,当一个借口有多个实现类的时候,@Autowired就会出现问题,解决办法:
1、通过增加@Qualifier(实现类的名字),MailStudentImpl类实现student接口如下:

@Autowired
@Qualifier("GirlStudentImpl")
private Student student;

2、也可以通过@Resource(name=”*“)装配,则编程更加简洁:

@Resource(name="GirlStudentImpl")
private Student student;

自动装配:Ioc容器可以自动装配相互协作bean之间的关联关系。因此,如果可能的话可以自动让Spring通过检查BeanFactory中的内容类替我们制定bean的协作者。
自动装配需要满足两点:
1、bean2.java里面的属性名字必须和appliationContext.xml里面对应的bean id的名字相同,也就是private Bean3 bean3;这个bean3(对应的get,set方法)必须和

<bean id="bean3" class="com.test.model.Bean3"
  parent="abstractBean">
  <property name="name" value="Tom" />
  <property name="password" value="123" />
 </bean> 

这个bean3相同.否则不能自动装配,
2、在声明里配置一个属性,default-autowire=”byName”通过名字装配。


相关文章

  • 源码|详解分布式事务之 Seata-Client 原理及流程
    前言 在分布式系统中,分布式事务是一个必须要解决的问题,目前使用较多的是最终一致性方案.自年初阿里开源了Fescar(四月初更名为Seata)后,该项目受到了极大的关注,目前已接近 8000 Star.Seata 以高性能和零侵入的特性为目 ...
  • 简单的SSM-Shiro安全框架搭建
    首先需要导jar包! 配置你自己的web.xml CharacterEncodingFilter org.springframework.web.filter.CharacterEncodingFilter encoding utf-8 f ...
  • 字符串: 字符串用单引号(')或双引号(")括起来,不可变 1,find通过元素找索引,可切片,找不到返回-1 2,index,找不到报错. 3,split 由字符串分割成列表,默认按空格. 4,captalize 首字母大写,其 ...
  • JDBC----学习(1)----基础知识
    1   DBC是java访问数据库的基石,JDO, Hibernate等只是更好的封装了JDBC. 2  JDBC(Java Database Connectivity)是一个独立于特定数据库管理系统.通用的SQL数据库存取和操作的公共接口 ...
  • 什么是GIL?GIL对多线程的影响 GIL全称Global Interpreter Lock(全局解释器锁).GIL和Python语言没有任何关系,只是因为历史原因导致在官方推荐的解释器Cpython中遗留的问题.(多线程)每个线程在执行的 ...
  • 微软发布人工智能教育与学习共建社区
    步入2019,人工智能(Artificial Intelligence)的浪潮依然汹涌,各国对于AI人才的需求进一步加大:2月,美国总统特朗普签署行政命令,正式启动美国人工智能计划:加拿大正通过"全球技能战略签证"吸引国 ...

2020 jeepshoe.net webmaster#jeepshoe.net
13 q. 0.344 s.
京ICP备10005923号