2016-07-21 8 views
1

Nun, ich versuche Objekte zu analysieren und ich habe so viele Probleme. Meine Klassen sind wie folgt aus:Wie man DTO zu Pojo-Objekten parst

- Entidad -

public class Entidad{ 

    private Long codEntidad; 
    private Set<Comunicacion> comunicacion; 


    /*------------ Getter and Setters --------------*/ 

} 

- Comunicacion -

public class Comunicacion { 

    private Entidad entidad; 
    private Long codComunicacion; 

    /*------------ Getter and Setters --------------*/ 

} 

ich DTO Objekte analysieren müssen:

- EntidadDTO -

public class EntidadDTO{ 

    private Long codEntidad; 
    private Set<ComunicacionDTO> comunicacionDto; 


    /*------------ Getter and Setters --------------*/ 

} 

- ComunicacionDTO -

public class ComunicacionDTO { 

    private EntidadDto entidadDto; 
    private Long codComunicacion; 

    /*------------ Getter and Setters --------------*/ 

} 

ich versuchte, zu verwenden:

BeanUtils.copyProperties (entidad, entidadDto);

Es scheint, dass die Analyse erfolgreich ist, aber die Eigenschaft entidadDto.getComunicacionDto(); ist eine hashMap von Comunicacion (nicht ComunicacionDTO)

Sollte ich versuchen, eine benutzerdefinierte Analyse mit Reflektion zu machen?

Auch ich würde dies verwenden, um mehr Objekte mit einer ähnlichen Struktur zu analysieren. Danke!

Antwort

0

Versuchen Sie, Dozer. Sie können Zuordnungen von Bean zu Bean definieren.

+0

Ich habe von Dozer gehört, aber kann wirklich Objekte mit zyklischen Referenzen wie diesen konvertieren? –

0

Warum möchten Sie Java-Objekt analysieren und Daten auf andere Java-Objekt verschieben? Parsen ist für unstrukturierte Strings, nicht für Objekte.

Verwenden Sie Setter/Getter, um Daten von einem Objekt zum anderen zu verschieben. Wenn Sie Reflexion verwenden, werden Sie beim Refactoring weinen.

+0

Der Grund ist, dass ich auf meinem Controller ein DTO erzeuge und via Service das Dao ein Pojo benötigt, um ein Register auf ddbb zu erstellen. Sollte ich den Controller ändern, um ein Pojo zu bekommen und das Parse vergessen? –