1. 首先, Interface1 接口有两个实现类 Interface1Impl1 和 Interface1Impl2

Interface1 接口:

package com.example.service;/*** Created by liuzh on 2018-05-29.* 接口1*/
public interface Interface1 {void fun1();
}

以下是接口的两个实现类,请注意@service注解的使用方式,这里给每个实现类标注了不同的名称,方便在@Resource注入时区别注入

Interface1 接口实现类1:

package com.example.service.impl;import com.example.service.Interface1;
import org.springframework.stereotype.Service;/*** Created by liuzh on 2018-05-29.*/
@Service("s1")
public class Interface1Impl1 implements Interface1 {@Overridepublic void fun1() {System.out.println("接口1实现类 ...");}public void fun2(){System.out.println("接口1实现类1 fun2 ...");}
}

Interface1 接口实现类2:

package com.example.service.impl;import com.example.service.Interface1;
import org.springframework.stereotype.Service;/*** Created by liuzh on 2018-05-29.*/
@Service("s2")
public class Interface1Impl2 implements Interface1 {@Overridepublic void fun1() {System.out.println("接口1实现类 ...");}public void fun2(){System.out.println("接口1实现类2 fun2 ...");}
}

2. 通过 @Autowired 和 @Qualifier 配合注入

@Autowired
@Qualifier("interface1Impl1")
Interface1 interface1;    //正常启动

3. 使用@Resource注入,根据默认类名区分

@Resource(name = "interface1Impl1")
Interface1 interface1;    //正常启动

4. 使用@Resource注入,根据@Service指定的名称区分

@Resource(name = "s1")
Interface1 interface1;    //正常启动

使用@Resource注入,根据@Service指定的名称区分,可以避免多个实现类在不同包下,但是类名相同的情况。

感谢您的阅读,欢迎参观我的个人网站:闲乐小站【www.xianlewang.cn】

一个接口多个实现类的Spring注入方式相关推荐

  1. 一个接口多个实现类的Spring注入方式(注解方式)

    转载: https://blog.csdn.net/niceLiuSir/article/details/80499821 1. 首先, Interface1 接口有两个实现类 Interface1I ...

  2. Java写一个接口和两个类

    编写一个接口和两个类,要求如下: (1)设计一个学生功能的接口,实现平均成绩的计算和基本信息的输出. (2)设计一个学生类实现了学生接口,学生类的基本信息有:学号.姓名.年龄.各科成绩(假设一共5门课 ...

  3. 你写的代码扩展性高吗?快试试用Spring注入方式来解耦代码!

    点击关注公众号,实用技术文章及时了解 来源:blog.csdn.net/qq_38050259/article/ details/113414419 目的:对比传统方式和 Spring注入方式创建对象 ...

  4. Spring注入方式及优缺点

    Spring注入方式 Spring依赖注入的方式有:构造器注入,setter方法注入.属性注入.工厂方法注入,官方3.x版本推荐使用setter方法注入,到4.x之后官方推荐使用构造器注入. 1.构造 ...

  5. Spring 注入方式

    Spring 注入方式有三中 1.setter注入 2.构造器注入 3.基于注解的注入 1.setter注入 在InjectionServiceImple 中有 变量 injectionDao 并有其 ...

  6. 在.NET Core中处理一个接口多个不同实现的依赖注入问题

    前言 近段时间在准备公司的技术分享,所以这段时间将大部分时间放在准备分享内容上去了.博客也就停了一下下. 在.NET Core中处理依赖注入问题时,往往是定义好了一个操作规范的接口,会有N多个基于不同 ...

  7. Spring注入方式及用到的注解 -----@Component,@Service,@Controller,@Repository

    注入方式: 把DAO实现类注入到service实现类中,把service的接口(注意不要是service的实现类)注入到action中,注 入时不要new 这个注入的类,因为spring会自动注入,如 ...

  8. 框架 Spring 注入方式

    Spring通过DI(依赖注入)实现IOC(控制反转) 常用的注入方式主要有三种 1 构造方法注入 2 setter注入 3 基于注解的注入 什么是注入?spring通过配置文件生产对象,我们拿到这个 ...

  9. 关于Spring注入方式的几道面试题,你能答上么?

    作者:Richard_Yi juejin.cn/post/6844904056230690824 前言 本章的内容主要是想探讨我们在进行Spring 开发过程当中,关于依赖注入的几个知识点.感兴趣的读 ...

最新文章

  1. SQL assistant
  2. excel 如何快速实现绝对引用
  3. 【Google Play】应用 “更新被拒“ 后续处理 ( 上传新版本后 , 一定要停用被拒的版本, 才可以通过审核 | 停用被拒的版本 | 送审 )
  4. 源路由 就是指定数据传输经过这个路由服务器
  5. 2021年图机器学习有哪些新突破?麦吉尔大学博士后一文梳理展望领域趋势
  6. 如何使用Hibernate批处理INSERT和UPDATE语句
  7. CSS学习笔记11 CSS背景
  8. php倒计时关闭订单,订单倒计时取消,nodejs 辅助实现倒计时任务
  9. 电脑主板跳线_DIY电脑主板的跳线安装及排序规则
  10. MTK 驱动(78)----MTK 平台查看eMMC和DDR的工作频率
  11. 【转】 谈谈C++中的swap函数
  12. vue多个根节点上的属性继承
  13. c++界面设计皮肤工具
  14. oracle毕业论文题目,2012届本科毕业论文设计题目参考
  15. FFmpeg mxf扩展hdr、bt2020
  16. DELL笔记本插入耳机没反应
  17. TensorFlow 卷积神经网络之猫狗识别(二)
  18. sublime-笔记
  19. Mysql三种存储引擎及区别
  20. [转]go-kit 入门

热门文章

  1. clickonce发布的安装包运行报错
  2. 圆方树学习记录及例题
  3. 鸿蒙os苹果ios对比,华为鸿蒙OS与苹果iOS测试,谁更流畅,真实对比大家看一下...
  4. JS中splice、slice用法及区别
  5. php crypt,PHP加密函数—crypt()函数加密用法实例
  6. 游戏王计算机人图片,人造人(《游戏王》卡牌角色)_百度百科
  7. Python数据分析实战-提取DataFrame(Excel)某列(字段)最全操作(附源码和实现效果)
  8. SpringBoot中使用Mybatis逆向工程(实体类含数据库注释)
  9. Android二维码原理与优化方向
  10. java关闭tomcat服务器端口_关闭tomcat端口号