spring中集合的注入(list,map等)

本文内容纲要:

- 前言

- 具体用法

目录

  • 前言
  • 具体用法

前言

这种用法是在看别人代码的时候学到的,觉得挺有意思的,记录一下。

具体用法

首先新建一个接口

public interface PlService {

}

新建两个这个接口的实现类

@Service

public class AService implements PlService {

public AService() {

System.out.println("----------------------- AService 实例化 ------------------------");

}

}

@Service

public class BService implements PlService {

public BService() {

System.out.println("------------------------------- BServive 实例化 ------------------------");

}

}

在另一个类中注入集合

我是在一个启动的runner中注入的:

@Component

@Slf4j

public class PlEurekaServerRunner implements ApplicationRunner {

@Autowired

private List<PlService> services;

@Autowired

private Map<String, PlService> serviceMap;

@Override

public void run(ApplicationArguments args) throws Exception {

for (PlService service : services) {

log.info("++++++++++++++++++++ {}+++++++++++++++++++ ", service.getClass().getName());

}

for (Map.Entry<String, PlService> entry : serviceMap.entrySet()) {

log.info("======================= {} : {} ====================", entry.getKey(), entry.getValue());

}

}

}

注入的结果

如果是List的话,会注入该接口的所有实现类;如果是Map的话,key为类名,value为实现类。

本文内容总结:前言,具体用法,

原文链接:https://www.cnblogs.com/lwmp/p/13837655.html

以上是 spring中集合的注入(list,map等) 的全部内容, 来源链接: utcz.com/z/296028.html

回到顶部