spring注入map,spring注入多個實現類在map里
一個接口,兩個實現類
接口:
public interface TestService { void test(); }
兩個實現類
@Component("testOService")
public class TestOService implements TestService {
@Override
public void test() {
System.out.println("testOService");
}
}
@Component("testTwoService")
public class TestTwoService implements TestService {
@Override
public void test() {
System.out.println("testTwoService");
}
}
查看:
@Service public class UserInfoService { @Autowired private Map<String ,TestService> testServiceMap; @PostConstruct public void init(){ testServiceMap.get("testOService").test(); testServiceMap.get("testTwoService").test(); } }

源碼解析
對應spring源碼位置 org.springframework.beans.factory.support.DefaultListableBeanFactory
方法 : org.springframework.beans.factory.support.DefaultListableBeanFactory#resolveMultipleBeans

