Spring Container에서 타입으로 빈을 검색 참조변수에 자동 주입(DI) 검색된 빈이 n 개면, 그 중에 참조 변수+이름이 일치하는 것을 주입한다.
//Engine으로 받을 수 있는 빈이 n개 일 경우
//@Component("engine") 또는 (class engine)과 맵핑됨.
@Autowired Engine engine;
/*
주입 대상이 변수일 때, 검색된 빈이 1개 아니면 예외 발생
주입 대상이 배열일 때, 검색된 빈이 n개라도 예외 발생 X
*/
@Autowired(required = false) //주입할 빈을 찾지 못하여도 예외X.
SuperEngine superEngine;
Spring Container에서 이름으로 빈을 검색해서 참조 변수에 자동 주입(DI) 일치하는 이름의 빈이 없으면 예외 발생
자바 9이후부터 지원 안한다고 함.
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
<version>1.3.1</version>
</dependency>
따라서 사용하려면 pom에 추가 해줘야 함.

class Car{
@Resource(name = "superEngine")
//superEngine의 이름을 가지는 빈이 주입됨.
Engine engine;
}
class Car{
@Resource
//engine의 이름을 가지는 빈이 주입됨.
Engine engine;
}
//Type으로 먼저 찾고
//superEngine과 이름이 일치하는거
class Car{
@Auotwired
@Qualifier("superEngine")
Engine engine;
}
