美文网首页
通过接口注入多个实现类

通过接口注入多个实现类

作者: 策马踏清风 | 来源:发表于2020-06-18 17:09 被阅读0次

通过注入一个List<BaseService>的方法注入多个实现类,然后再循环遍历列表,得出需要使用的实现类。可以作为策略模式的实现之一。

@Autowire 和 @Resource

  1. 这两个都是用来装配bean的,可以加在字段或方法上(get,set,构造方法)
  2. Autowired默认使用类型装配,找到多个才会根据变量名找
  3. Autowired默认requiredtrue即找不到会报错
  4. Resource是先通过名字找,然后才是类型

使用@Autowired实现

Autowired是通过类型先匹配的,所以可以匹配到多个类。如果接受的变量刚好是集合,便能把匹配的所有类都赋值给集合。

private List<BaseService> services;

相关文章

  • 通过接口注入多个实现类

    通过注入一个List 的方法注入多个实现类,然后再循环遍历列表,得出需要使用的实现类。可以作为策略模式的实现之一。...

  • 架构之谈:谈谈spring bean的Primary的进阶用法,

    熟悉spring的朋友应该知道,在spring体系中,如果一个接口有多个实现类,此时通过接口注入会导致启动报错,而...

  • python多态

    多态定义 在面向对象编程中, 多个类的相同接口差异化实现. 多态作用 通过在多个类中实现通用接口, 使得该类具有接...

  • Java的接口

    接口将方法声明与实现分离,一个接口可以有多个实现类,一个类也可以实现多个接口。 定义接口 使用interface关...

  • spring之接口实现类排序

    spring中接口的实现类排序 应用场景是项目中有个接口,这个接口有多个实现类,对这个多个实现类进行排序 举例一 ...

  • 抽象类和接口的区别

    抽象类和接口的区别,类可以继承多个类么,接口可以继承多个接口么,类可以实现多个接口么。 1、抽象类和接口都不能直接...

  • 九、动态代理的原理分析

    动态代理的案例 定义一个接口: 定义一个接口的实现类: 定义一个动态代理的实现类: 目标对象一般通过构造方法注入 ...

  • Java 创建线程的三种方式

    通过继承 Thread 类 Thread 也实现了 Runnable 接口 多个线程相互独立,因为创建了多个任务,...

  • 2018-06-25

    接口有什么用 1、通过接口可以实现不相关类的相同行为,而不需要了解对象所对应的类。 2、通过接口可以指明多个类需要...

  • Java中高级面试题(3)

    接口有什么用 1、通过接口可以实现不相关类的相同行为,而不需要了解对象所对应的类。 2、通过接口可以指明多个类需要...

网友评论

      本文标题:通过接口注入多个实现类

      本文链接:https://www.haomeiwen.com/subject/rilazhtx.html