03 | 컬렉션 병합하기
스프링 프레임워크는 컬렉션 병합 메커니즘도 제공한다. 다시 말해, 서로 다른 값의 집합을 가진 동일한 타입의 또 다른 빈을 보유할 수 있고, 실제 컬렉션을 병합/결합하여 중복을 피하고 값의 집합에 더 많은 값을 추가할 수 있다. 예제를 하나 살펴보자. typeDAO 빈을 가지고 있는데, 또 다른 XML 설정에 있을 수 있는 더 많은 엔트리를 추가하고 싶다고 하자. 이 컬렉션 병합 접근법은 값들을 결합하거나 상속받아야 할 템플릿 또는 베이스가 필요한 경우에 이점이 된다. 예제 5-6에서 병합 예제를 살펴보기 바란다.
예제 5-6 컬렉션 병합 예제
<bean id="typeDAO" abstract="true"
class="com.apress.isf.spring.data.TypeDataRepository">
<property name="types">
<map>
<entry key="webType" value-ref="webType" />
<entry key="pdfType" value-ref="pdfType" />
<entry key="noteType" value-ref="noteType" />
</map>
</property>
</bean>
<bean id="anotherTypeDAO" parent="typeDAO">
<property name="types">
<map merge="true">
<entry key="pagesType" value-ref="pagesType" />
<entry key="numbersType" value-ref="numbersType" />
<entry key="keynoteType" value-ref="keynoteType" />
</map>
</property>
</bean>