WEB/Spring

[Spring] 의존 객체 자동주입

노력의천재 2020. 4. 4. 16:19

의존 객체 자동 주입이란 스프링 설정 파일에서 의존 객체를 주입할 때 <constructor-org> 또는 <property> 태그로 의존 대상 객체를 명시하지 않아도 스프링 컨테이너가 자동으로 필요한 의존 대상 객체를 찾아서 의존 대상 객체가 필요한 객체에 주입해 주는 기능입니다.

구현 방법으로는 @Autowired@Resource 어노테이션을 이용해서 쉽게 구현할 수 있습니다.

 

※ 어노테이션(Annotation)

주석이라는 사전적 의미를 가지고 있으며 컴파일 혹은 런타임에 해석됩니다. 데이터를 위한 데이터(메타 데이터) 라고도 불리며 JDK5 부터 등장한 개념입니다.

 

@Autowired는 주입하려고 하는 객체의 타입이 일치하는 객체를 자동으로 주입하는 방법이고 @Resource는 주입하려고하는 객체의 이름이 일치하는 객체를 자동으로 주입하는 방법입니다.

 

xml 파일 수정
@Autowired 사용과 @Resource 사용 비교

 

※ 생성자가 아닌 Property나 Method에 @Autowired 혹은 @Resource를 쓰려면 Default 생성자를 반드시 명시해줘야 합니다. 그리고 @Resource는 생성자에는 사용할 수 없고 Property와 Method에만 사용 가능합니다. 

 

 

출처 : 인프런, 자바 스프링 프레임워크 - 신입 프로그래머를 위한 강좌