[Spring] 조회한 빈이 모두 필요할 때에 대한 나름의 이해
2023. 10. 18. 18:01ㆍSpring
HashMap과 List를 이용하면 그 타입 빈을 생성자 주입을 통해서 모두 받을 수 있다.
동적으로 빈을 선택해줄 때 되게 유용한 방법이다.
Code 값으로 파라미터에 대한 인자를 받고 받은 값을 키로 hashmap에 넣어주게 되면 해당하는 빈(객체)을 얻을 수 있는 것이다.
Map<String, DiscountPolicy>, List<DiscountPolicy> 처럼 사용한다. ChatGPT에 따르면 보통은 HashMap이나 LinkedHashMap을 사용한다고 한다.
그리고 AnnotationConfigApplicationContext 등록해줄 때 두 개 이상의 인자도 가능하다. 이때 concat개념으로 가져온다. 그리고 config파일이 아닌 class 파일도 넣을 수 있다. 그러면 거기에 대한 빈을 만들고 의존관계를 주입해준다. 물론 하나의 class만 넣으면 빈이 하나이므로 주입이 안될 것이다.
Reference
'Spring' 카테고리의 다른 글
[Spring] 빈 생명주기 콜백에 대한 나름의 이해 (0) | 2023.10.22 |
---|---|
[Spring] 빈 자동등록에 대한 나름의 이해 (0) | 2023.10.21 |
[Spring] 애노테이션 직접 만들기 (1) | 2023.10.17 |
[Spring] 조회 빈이 두 개 이상일 때 해결편 (1) | 2023.10.14 |
[Spring] 조회 빈이 두 개 이상일 때 생기는 문제에 대한 나름의 이해 (0) | 2023.10.12 |