인프런 커뮤니티 질문&답변

Jihwan Jang님의 프로필 이미지

작성한 질문수

스프링 핵심 원리 - 기본편

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

클래스 필드에서도 Map @Autowired를 사용할 수 있나요?

해결된 질문

21.11.21 17:41 작성

·

336

0

이번 예제에서 내부 클래스인 static class DiscountSerive에 Map 타입과 List 타입의 멤버변수를 만들고 @Autowired를 설정해 보았습니다. 저는 출력결과가 수업강의에 있었던 예제 처럼 타입에 맞는 빈이 모두 출력될 것이라 기대했는데 결과물은 null이네요. 클래스 필드에서는 @Autowired를 사용할 수 없는것일까요?

 

<코드>

 

<결과물>

 

답변 2

0

codesweaver님의 프로필 이미지

2021. 11. 24. 18:14

안녕하세요, Jihwan Jang 님. 공식 서포터즈 codesweaver 입니다.
.

질문하신 경우는 저도 생각치 못했던 경우네요. :)

검색해보니 @Autowired는 우선순위가 있습니다.

아래 링크의 테스트를 확인해보시면 생성자 주입과 필드 주입이 겹칠 경우, 생성자 주입이 우선시 됨을 알 수 있습니다.

https://dololak.tistory.com/565
.
감사합니다.

 

0

Jihwan Jang님의 프로필 이미지
Jihwan Jang
질문자

2021. 11. 21. 21:39

혹시 생성자를 먼저 처리하고 그 뒤에 필드에 있는 @Autowired를 처리하는 건가요?