SpringBoot:@Service多实现类时,指定某个实现类的方法

环境举例:

接口类 TestService

 创建两个实现类 TestService1Impl 和 TestService2Impl

实现方式一 

在需要指定的实现类上使用@Primary注解指定当前实现类

注意:

@Primary只能标注在@Service多个实现类的其中一个,如果另外一个实现类上也加上@Primary注解会报错:

TestService' available: more than one 'primary' bean found among candidates: [testService1Impl, testService2Impl]

实现方式二 

在@Resource依赖注入时选定实现类@Qualifier

首先给多个实现类起别名

在其他类进行依赖注入时标注使用哪个实现类

注意:

如果你不使用@Resource而使用@Autowired,idea会自动提醒有错

 

文章转载至:https://blog.csdn.net/mjhaamen/article/details/107080326

posted @ 2022-03-07 14:15  怒吼的萝卜  阅读(198)  评论(0编辑  收藏  举报