collection 타입의 property 설정
<list> - java.util.List나 배열
<set> - java.util.Set
<map> - java.util.Map
<props> - java.util.Properties
- List 타입의 property 설정
- Set 타입의 property 설정
- Map 타입의 property 설정
- Properties 타입의 property 설정
- 독립형 collection 구현
각 bean에서 중복 처리되는 속성값을 재사용하기 위한 방법으로, Namespaces의 util 태그를 이용한다.
의존 관계 자동 설정(autowire)
의존하는 bean 객체의 타입이나 이름을 이용해 의존 객체를 자동 설정할 수 있는 기능이다.
자동 설정과 직접 설정의 혼합도 가능하다.
<bean> 태그의 autowire 속성을 이용한다.
1. byName
id값과 일치하는 setter 메소드를 가진 bean에 injection된다.
Cat을 주입받는 Person의 bean 코드 안에 autowire="byName"을 적어주어야 한다.
2. byType
type과 일치하는 setter 메소드의 인자를 가진 bean에 injection된다.
byType 방식의 경우 같은 타입이 2개 이상 존재할 경우 에러가 발생한다.
해결방법 1) primary="true"
같은 타입이 여러 개 있을 경우, primary="true"로 표시한 객체가 주입된다.
해결방법 2) autowire-candidate="false"
autowire-candidate="false"를 적어주면 해당 객체는 주입되지 않는다.
3. constructor
주입받을 DTO 클래스에 Cat타입의 cat 인자를 받는 생성자를 작성한다.
.xml에 autowire="constructor"를 적어준다.
4. default-autowire
autowire를 여러 개 적어줘야 할 경우, .xml의 가장 위쪽 태그에 dafault-autowire="byType"을 적어주면
모든 bean에 공통적으로 autowire가 적용된다.
'프로그래밍 > Spring' 카테고리의 다른 글
[Spring] scope, annotation (0) | 2020.12.14 |
---|---|
[Spring] Dependency Injection(Constructor/Setter-based Injection) (2) | 2020.12.13 |
[Spring] Spring Framework의 개요 (0) | 2020.12.13 |
[Spring] return "redirect:/주소"와 return "view" (0) | 2020.11.16 |
댓글