강의

멘토링

로드맵

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

창현님의 프로필 이미지
창현

작성한 질문수

스프링 핵심 원리 - 기본편

@Autowired 필드 명, @Qualifier, @Primary

@Autowired나 @Qualifier, @Primary를 사용해야하는 이유

작성

·

445

0

[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? 예
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예
3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예

[질문 내용]
말그대로 @Autowired나 @Qualifier, @Primary를 사용해야하는 이유가 궁금합니다. 조회 대상 빈이 2개 이상일 때 찾기 위해서라고 하는데 우선순위를 정해서 한다는 것은 어차피 우선순위에서 벗어난 빈은 사용하지 않는다는 것이고 사용하지 않는 빈은 @Component를 삭제하여 빈으로 등록하지 않는 것이 더 효율적이지 않을까 싶어서요! 아니면 빈에 올려두고 다른 곳에서도 우선순위에서 밀려난 빈을 사용하려고 그렇게 사용하는건지 궁금합니다!

퀴즈

Đâu là lý do chính khiến phương thức Field Injection thường không được khuyến nghị?

khó đảm bảo tính bất biến

Dễ thay đổi phụ thuộc

Do khó test bằng Java thuần

Vì code cài đặt phức tạp

답변 2

1

"어차피 우선순위에서 벗어난 빈은 사용하지 않는다는 것이고 사용하지 않는 빈은 @Component를 삭제하여 빈으로 등록하지 않는 것이 더 효율적"이라고 말씀하셨는데, 여기에 답이 있는 것 같습니다. @Component를 삭제하여 사용하지 않으려면 클래스를 열어야 하는데 이러한 행위가 OCP 위반이라서가 아닐까요?

1

안녕하세요. 창현님, 공식 서포터즈 David입니다.

말씀하신대로 빈으로 올려두고 다른 곳에서도 사용할 수도 있기 때문입니다:)

감사합니다.

창현님의 프로필 이미지
창현

작성한 질문수

질문하기