등록된 Been의 이름을 명시
ex) @Autowired
인터페이스명 클래스명;
@Autowired
Food pizza;
@Autowired
Food chicken;
@Test
@DisplayName("테스트")
void test1() {
pizza.eat();
chicken.eat();
}
@Primary가 추가되면 같은 타입의 Been이 여러 개 있더라도 @Primary가 적용된 Been 객체를 우선적으로 주입
@Component
@Primary
public class Chicken implements Food {
@Override
public void eat() {
System.out.println("치킨을 먹습니다.");
}
}
@Autowired
Food food;
@Test
@DisplayName("테스트")
void test1() {
food.eat();
}
@Qualifier
(”별칭”)이 연결됨
@Component
@Qualifier("pizza")
public class Pizza implements Food {
@Override
public void eat() {
System.out.println("피자를 먹습니다.");
}
}
@SpringBootTest
public class BeenTest {
@Autowired
@Qualifier("pizza")
Food food;
@Test
@DisplayName("테스트")
void test1() {
food.eat();
}
}