Back-end/스프링부트

조회 빈이 2개 이상일때.

madison 2021. 1. 31. 11:52

 

@Autowried는 타입으로 조회하는데, 선택된 빈이 두개 이상일 때 문제가 발생한다. (NoUniqueBeandEfinitionException) 

-> 해결 방법

1) Autowired 필드명

@Autowired는 타입 매칭을 시도하고, 이때 여러 빈이 있으면 필드 이름, 파라미터 이름으로 빈 이름을 추가 매칭한다. 

2) Qualifier 사용 

추가 구분자를 붙여주는 방법이다. 빈 이름을 변경하는것은 아님.

3) Primary 사용

@Primary는 우선순위를 정하는 방법이다. @Autowired 시에 여러 빈이 매칭되면 @Primary가 우선권을 가진다.

 

 

 

* 위 내용은 인프런 - 스프링 핵심원리 (김영한님) 강의를 들으며 정리한 내용입니다. 

(www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%ED%95%B5%EC%8B%AC-%EC%9B%90%EB%A6%AC-%EA%B8%B0%EB%B3%B8%ED%8E%B8