의존 객체 자동 주입
개발자가 주입대상을 명시하지 않아도 자동으로 연결(스프링/스프링 컨테이너)
@Resource
Java에서 지원하는 어노테이션(특정 프레임워크에 비종속적이다)
-의존객체를 찾는 순서
[이름] -> [타입] -> [@Qualifier] -> 실패
-멤버변수, set메서드에서만 사용가능
@Inject
Java에서 지원하는 어노테이션(특정 프레임워크에 비종속적이다)
-의존객체를 찾는 순서
[타입] -> [@Qualifier] -> [이름] -> 실패
-빌드도구(Maven)를 사용해서 해당 라이브러리 의존성 추가(필수)
-멤버변수, set메서드, 생성자, 일반메서드 사용가능
@Autowired
Spring에서 지원하는 어노테이션 (Spring에 종속적이다)
-의존객체를 찾는 순서
[타입] -> [이름] -> [@Qualifier] -> 실패
-반드시 스프링에서만 사용
-멤버변수, set메서드, 생성자, 일반메서드 사용가능
@Qualifier
주입하려는 대상이 여러개 있을때 해당 대상을 구분하기 위한 값
-@Qualifier 설정한 객체가 없을 경우 Exception 발생 - 항상 객체가 존재해야함
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource" >
<qualifier value="ds1">
...
</bean>
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource" >
<qualifier value="ds2">
...
</bean>
@Autowired @Qualifier("ds2")
@Autowired @Qualifier("ds2")
private DataSource ds;
이름도 같고 타입도 같아서 못찾았던걸 ds2라는 별칭을 갖고 찾음
쉽게 찾기 위해 사용하는 어노테이션
'spring · spring boot' 카테고리의 다른 글
[Spring] mybatis 개발 사용 순서 따라 적용해보기 (0) | 2023.12.12 |
---|---|
[spring] HikariCP 커넥션 풀 연동하기 (0) | 2023.12.05 |
[spring] sqlSessionFactory, mybatis-config.xml (1) | 2023.12.04 |
[spring] root-context.xml와 inject, test 어노테이션 (1) | 2023.12.04 |
[spring] 스프링에 MyBatis 연동하기 (0) | 2023.12.03 |