컬렉션 및 목록 DI (XML)
Section 1.  컬렉션 DI 
1. 컬렉션 DI
- Java 에서 제공하는 컬렉션 (ArrayList 등) 객체를 DI
- 생성자 DI 원리를 이용
<bean id ="exam" class = "spring.di.entity.Exam" p:kor="10" p:eng="10"/>
<bean id="exams" class="java.util.ArrayList">
      <constructor-arg>			// ArrayList 는 컬렉션을 매개변수로 받는 생성자가 존재 
          <list>			// ArrayList 의 요소 생성 및 삽입
              <bean class = "spring.di.entity.Exam" p:kor="20" p:eng="10"/>
              <ref bean="exam"/>	// 위에 존재하는 exam bean 객체 삽입
          </list>
      </constructor-arg>
</bean>
// main 부분
List<Exam> exams = (List<Exam>) context.getBean("exams");
		
for(Exam e: exams) {
    System.out.println(e.getKor()); // 10, 20 출력 
}
2.  생성자 DI 방식이 아닌 컬렉션 객체 생성 
- util Namespace 불러오기
- xmlns:util="http://www.springframework.org/schema/util" 추가됨
  
- ArrayList 생성자로 요소를 넣는 것이 아닌 직접 컬렉션 객체 생성
// util 처리기가 list 요소를 처리함
<util:list id="exams" list-class="java.util.ArrayList">
      <bean class = "spring.di.entity.Exam" p:kor="10" p:eng="10"/>
      <ref bean="exam"/>
</util:list>
     
3.  Setter DI 이용 
- CollectionBean 클래스
public class CollectionBean{
    private List<String> addressList;
 
    public void setAddressList(List<String> addressList){
        this.addressList = addressList;
    }
    public List<String> getAddressList(){
        return addressList;
    }
}
  - Spring Bean Configuration File 설정
<bean id="tv" class="spring.di.entity.CollectionBean">
        <property name="addressList">		//  setAddressList setter 메서드
            <list>
                <value>서울시 강남구 역삼동</value>
                <value>서울시 성동구 행당동</value>
            </list>
        </property>
</bean>    - main 부분
CollectionBean address = context.getBean(CollectionBean.class);
		
for(String str: address.getAddressList()) {
  	System.out.println(str);
}Author And Source
이 문제에 관하여(컬렉션 및 목록 DI (XML)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@codren/컬렉션-생성과-목록-DI저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)