그것은 성찰을 사용하여 두 개의 간단한, 평면 자바 콩을 병합 쉽게 :도구
BeanInfo info = Introspector.getBeanInfo(ContactBean.class);
PropertyDescriptor pDescArr[] = info.getPropertyDescriptors();
for(PropertyDescriptor pDesc : pDescArr){
//copy properties and check for conflicts here
}
을하지만,이 속성이 중첩 된 콩, 또는 컬렉션을 포함 할 때 좀 더 복잡해진다. 복잡한 콩의 깊은 병합을 처리 할 수있는 스마트 도구가 있습니까?
나는 병합 작업을 할 방법을 단지에 대한 좀 더 구체적인 :
는, 간단한 속성을 원본에서 대상으로 복사해야 소스 콩의 수집 및 빈 대상 bean을 감안할 때,하지 않는 한 갈등이있다. 충돌이 있으면 필드를 비워 두어야합니다. 특성이 콜렉션 유형 인 경우, 소스 bean의 값은 중복을 제외하고 결합되어야하며 destination 특성에 복사되어야합니다. 이러한 규칙은 bean 자체의 속성에 재귀 적으로 적용해야합니다.
Google에 아무 것도 없다는 사실 외에도,이 도구는 충돌을 처리하는 방법을 결정하기 위해 매우 구성 가능해야합니다. 병합에 대한 귀하의 규칙은 무엇입니까? –
@Dave - 원래의 질문에 내 병합 규칙에 대한 설명을 추가했습니다. – morgancodes