• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

섹션7. 조회한 빈이 모두 필요할 때, List, Map

24.01.08 18:55 작성 조회수 136

0

AllBeanTest에서

@Autowired 어노테이션을 붙일 경우에, 빨간 밑줄이 생기면서,

Autowired members must be defined in valid Spring bean (@Component|@Service|...) 이런 경고 문구가 뜹니다.

실제로 해당 어노테이션을 붙이던 안붙이던 동일한 결과가 출력이 되는데 이유를 알 수 있을까요?

 

public class AllBeanTest {

    @Test
    void findAllBean() {
        ApplicationContext ac = new AnnotationConfigApplicationContext(AutoAppConfig.class, DiscountService.class);

    }

    static class DiscountService {
        private final Map<String, DiscountPolicy> policyMap;
        private final List<DiscountPolicy> policies;

        @Autowired
        public DiscountService(Map<String, DiscountPolicy> policyMap, List<DiscountPolicy> policies) {
            this.policyMap = policyMap;
            this.policies = policies;
            System.out.println("policyMap = " + policyMap);
            System.out.println("policies = " + policies);
        }
    }
}

답변 1

답변을 작성해보세요.

1

OMG님의 프로필

OMG

2024.01.08

안녕하세요. euneun님, 공식 서포터즈 OMG입니다.

다음 링크(클릭) 제 답변을 참고해주세요 😀

감사합니다.