@Primary(우선순위설정)
Application
PokemonService
Pokemon(인터페이스)
Pikachu(피카츄)인터페이스 상속받음
@Primary 설정해서 우선순위로 설정함
Charmander(파이리)인터페이스 상속받음
Squirtle(꼬부기)인터페이스 상속받음
@Qualifier(@Primary 보다 더 우선권을 가짐)
Application
PokemonService
Pokemon(인터페이스)
Charmander(파이리)인터페이스 상속받음
Pikachu(피카츄)인터페이스 상속받음
@Primary로 설정해도 @Qualifier를가진 꼬부기가 우선권을 가진다
Squirtle(꼬부기)인터페이스 상속받음
같은 타입의 bean 여러 개 주입(List/Map(타입))
Application
PokemonService
Pokemon(인터페이스)
Charmander(파이리)인터페이스 상속받음
Pikachu(피카츄)인터페이스 상속받음
Squirtle(꼬부기)인터페이스 상속받음
@Resource
@Resource는 bean의 이름으로 주입 받는다 하지만 이름이 일치하지않으면 타입으로 주입 받는데
동일한 타입이 있는경우에는 주입하지못함
사용하려면 라이브러리 다운
1. 같은 타입의 bean이 여러 개 있는 상황
Application
PokemonService
Pokemon(인터페이스)
Charmander(파이리)인터페이스 상속받음
Pikachu(피카츄)인터페이스 상속받음
Squirtle(꼬부기)인터페이스 상속받음
2. 같은 타입의 bean이 1개인 상황(생성자X/setter O)
Application
PokemonService
피카츄 파이리 어노테이션주석
Squirtle(꼬부기)인터페이스 상속받음