개발 기록

조회한 빈이 모두 필요할 때, List, Map 본문

JAVA/스프링

조회한 빈이 모두 필요할 때, List, Map

수염차 2022. 3. 10. 11:41

동적으로 빈을 선택해야 할때

map이나 list으로 받아서 사용하면 편리함

@RequiredArgsConstructor
    static class DiscountService {
        private final Map<String, DiscountPolicy> policyMap;
        private final List<DiscountPolicy> policies;
        
        public int discount(Member member, int price, String discountCode) {
            DiscountPolicy discountPolicy = policyMap.get(discountCode);
            return discountPolicy.discount(member, price);
        }
    }

ex ; 가격 정책 두 가지를 고객이 선택해서 사용할 수 있을때

map 에 다 넣어서 선택한 정책을 받아와 그에 맞는 할인 된 가격을 구할 수 있다 discountCode

다형성 충족.

'JAVA > 스프링' 카테고리의 다른 글

빈 스코프  (0) 2022.03.15
스프링 빈 라이프 사이클  (0) 2022.03.14
다양한 의존관계 주입 방법  (0) 2022.03.10
싱글톤  (0) 2022.03.07
스프링 빈  (0) 2022.03.03
Comments