2016-07-21 4 views
1

オブジェクトを解析しようとしていますが、私は非常に問題があります。私のクラスには、このようにしている :DTOをPojoオブジェクトに解析する方法

- 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 --------------*/ 

} 

私はDTOオブジェクトに解析する必要があります。

- 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 --------------*/ 

} 

私が使用しようとした:

BeanUtils.copyProperties(entidad、entidadDto)。

パースは成功したようですが、プロパティentidadDto.getComunicacionDto(); ComunicacionDTOのhashMapです(ComunicacionDTOではありません)

私はリフレクションでカスタム解析を行うべきですか?

また、これを使用して、類似の構造を持つオブジェクトをさらに解析したいと思います。 ありがとう!

答えて

0

ドーザーを試してください。 BeanからBeanへのマッピングを定義することができます。 http://dozer.sourceforge.net/

+0

私はDozerについて聞いたことがありますが、実際にはこれらのような循環参照を持つオブジェクトを変換できますか? –

0

なぜJavaオブジェクトを解析し、他のJavaオブジェクトにデータを移動したいのですか? 構文解析は、オブジェクト用ではなく非構造化文字列用です。

セッター/ゲッターを使用して1つのオブジェクトから別のオブジェクトにデータを移動すると、リフレクションを使用すると、リファクタリングを開始するときに泣くようになります。

+0

私のコントローラで私はDTOを作成し、サービスを介してDaoはPojoを使用してddbbにレジスタを作成する必要があるからです。 コントローラーを変更してPojoを取得し、Parseを忘れてしまったらいいですか? –

関連する問題