2011-03-21 3 views
4

Dozer를 사용하여 DTO를 JPA 엔티티에 매핑하고 있습니다. 사용 케이스의Dozer로 값 객체 매핑하기

하나는 이미 존재하는 개체의 DTO 표현은 내가 JPA를 사용하여 개체를 찾아 지도를 사용 발견 된 엔티티 (소스에 DTO 를 매핑 도저를 사용 후, WS에 도착한다는 것입니다 , 대상) 매핑 방법 (맵 (소스, 대상 클래스)이 아님)).

@Embeddables와 같은 내 엔티티 (예 : 주소)에 일부 값 개체 (고전적인 불변 값 개체 의미 체계 포함)가 있습니다. 문제는 doher가 다음과 같이 설정할 때 주소 주소 인스턴스를 항상 생성하도록하려는 것입니다. Employee 개체이며 기존의 Address 인스턴스에 매핑되지 않습니다. 다음 클래스와

그래서는 :

public class Employee { 

    private Address address; 

    public void setAddress(Address address) { 
     this.address = address; 
    } 

    public Address getAddress() { 
     return this.address; 
    } 

} 

나는 도저 새 주소 인스턴스와 항상) setAddress을 (전화하지() getAddress에와 새 주소 '필드를 매핑하는 시도하여 싶습니다.

이렇게 할 방법이 있습니까?

답변

2

사용자 지정 변환기로이 작업을 수행 할 수 있다고 생각합니다. 도저 문서의 custom converters 섹션을 참조하십시오.