Spring
스프링 | 의존객체 자동주입 태그
개발 공부
2023. 2. 7. 18:06
의존 객체 자동 주입이란?
스프링 설정 파일에서 의존 객체를 주입할 때 <constructor-org> 또는 <property> 태그로 의존 대상 객체를 명시하지 않아도
스프링컨테이너가 자동으로 필요한 의존대상 객체를 찾아서 의존대상 객체가 필요한 객체에 주입해주는 기능이다.
구현 방법은 @Autowired와 @Resource 어노테이션을 이용해서 쉽게 구현할 수 있다.
의존 객체 자동 주입 태그

@Autowired (required = false)
타입을 기준으로 의존성을 주입,
같은 타입 빈이 두 개 이상 있을 경우 변수 이름으로 빈을 찾음
- Spring 어노테이션
- @Autowired 타입으로 빈을 주입 -> 없으면 이름으로 찾아서 빈을 주입
- 생성자, setter, 멤버변수에도 사용 가능

@Qualifier
빈의 이름으로 의존성 주입
@Autowired와 같이 사용
- Spring 어노테이션
- @Qualifier - 빈 이름의 강제 연결
- 컨테이너에 동일한 객체가 여러개 있을 때 어느 객체를 주입할지 선택해주는 어노테이션

@Resource
name을 속성을 이용하여 빈의 이름을 직접 지정
- JavaSE의 아노테이션(JDK9에는 포함 안되 있음)
- @resource - 이름으로 빈을 주입 -> 타입으로 빈을 주입
@Inject
@Autowired 아노테이션을 사용하는 것과 같다
- JavaSE의 아노테이션
자동 주입 명령하기

1. 컨테이너에 자동 주입 명령어 선언
<!-- 자동 주입 명령 - context의 모듈의 특정 기능을 필요로 합니다. -->
<context:annotation-config></context:annotation-config>
2. 컨테이너 하단 Namespaces 에서 context 체크
