Spring 의존성 주입 시 Qualifier?

Saru·2023년 3월 23일
0

봄의 Spring

목록 보기
1/3
post-thumbnail

@Autowired 와 static final 로 의존성을 주입 하는건 여러차례 접해 보았다. 오늘 회사 코드를 보는데 @Qualifier라는 어노테이션을 처음 보아서 적어 놓는다.

Bean 등록시 Bean 의 이름 만으로 구분짓기에 정보가 충분하지 않을 경우, @Qualifier 를 사용해 추가적인 정보를 줄 수 있다. 그리고 의존성을 주입할 때에도 마찬가지로 해당 어노테이션으로 찾아올 수 있는것이다.

<추가 공부 사항>

@Autowired 시에 Bean 이름을 찾게 되면, interface 기준으로 type 별로 찾아오게 된다. 그래서 같은 interface를 확장하여 구현하고 있다면, 같은 type 으로 빈 이름이 똑같이 되기 때문이다. 이럴때 별칭으로 찾고자 쓰는 기능이바로 @Qualifier 인 것 이다.

@Primary를 이용하게 되면, 한 type을 갖는 많은 빈중에 가장 최우선으로 빈을 찾게 할 수 있다.

애초에 Bean을 찾을 때, Type으로 매칭하는게 아니라 필드 이름으로 매칭 하고 싶다면 @Resource 어노테이션을 사용하면된다.


참고



공부하고 찾아보고, 적용해 본 내용을 중심으로 정리합니다. 개인공부 및 기록용이 주목적이며 최대한 정확한 정보를 습득하려고 노력하지만 틀린내용 이 포함될 가능성이 농후합니다. 본문에 대한 지적, 조언 언제든 감사히 받겠습니다.

profile
우당탕탕 개발기

0개의 댓글