DI란?
DI
란, Dependency Injection
의 앞글자만 따온 글자로서 의존성 주입
이라는 단어로 Spring에서 쓰인다.
DI
를 하려면, 직접 의존성을 주입할 대상 Bean
을 지정해주거나, Spring
이 알맞은 의존 객체를 찾아 주입해주는 의존성 자동 주입
방법이 있다.
- 의존성 주입 대상에
@autowired
어노테이션을 사용한다. - XML 설정에
<context:annotation-config />
설정을 추가한다.
@autowired 어노테이션
org.springframework.beans.factory.annotation
의존관계를 자동설정할 때 사용, 타입
을 이용하여 의존하는 객체를 삽입해준다.
해당 타입의 빈객체가 존재하지 않거나, 2개 이상 존재할 경우 스프링은 예외를 발생시킨다.
@Autowired
를 적용할 때 같은 타입의 빈이 2개 이상 존재하게 되면 예외가 발생하는데, 이럴 때 @Qualifier
를 사용하면 동일한 타입의 Bean
중 특정 Bean
을 사용하도록 하여 문제를 해결할 수 있다.