백엔드/Spring

Spring - Collection 생성&목록 DI | TIL_153

ran4 2022. 10. 17. 23:08

https://www.youtube.com/playlist?list=PLq8wAnVUcTFUHYMzoV2RoFoY2HDTKru3T

스프링 강의를 듣고 정리한 내용입니다

 

 


 

 

Program 클래스

▷ exam을 참조하는 ArrayList 생성

//List<Exam> exams = new ArrayList<>();
List<Exam> exams = (List<Exam>) context.getBean("exams");
exams.add(new NewlecExam(1, 1, 1, 1));

for(Exam e : exams) System.out.println(e);

 

▷ xml에서 ArrayList 생성하기

<bean class="java.util.ArrayList" />

 

 

 

Program 클래스에서 

exams.add(new NewlecExam(1, 1, 1, 1)); 코드를 xml로 변환하는 방법

 

 

setting.xml 수정 

<bean class="java.util.ArrayList">
<constructor-arg>
	<list>
	<bean class="spring.di.entity.newlecExam" p:kor="1" p:eng="1"/>
	<!-- 객체를 참조하여 추가 -->
	<ref bean="exam"/>
	</list>
</constructor-arg>
</bean>

 

 

 

 

Collection을 개별적으로 만드는 방법(생성자 이용 x)

-> namespace를 추가해야 한다

 

beans에

xmlns:util="http://www.springframework.org/schema/util"

코드를 추가한다 

 

 setting.xml 추가

<util:list>
<bean class="spring.di.entity.newlecExam" p:kor="1" p:eng="1"/>
</util:list>

-> 실제로 객체를 만들 수 있다

 

 

List의 클래스를 ArrayList로 지정하여 구체화 시킨다 

<util:list list-class="java.util.ArrayList">
<bean class="spring.di.entity.newlecExam" p:kor="1" p:eng="1"/>
</util:list>