16

DTO に変換する必要がある Java ドメイン オブジェクトがたくさんあります。

どうか、アンチパターンのことから始めないでください。ドメイン オブジェクトは、長い歴史のおかげでそのままの状態であり、私はそれらを変更することはできません (またはあまり変更できません。以下を参照してください)。

もちろん、すべて手作業で行う時代は終わりました。私が見回したところ、dozer が DTO マッピングに最適なフレームワークのようです。

しかし...私が本当に欲しいのは、DTOで必要なクラスとフィールドに注釈を付け、DTOとマッパーを生成するツールを実行することです。

それはあまりにも不合理に聞こえますか?

そのようなツールはすでに存在しますか?

4

5 に答える 5

13

ModelMapperをチェックアウトすることを検討してください。

オブジェクト モデルをインテリジェントにマッピングすることにより、必要な構成の量を最小限に抑えるという点で、Dozer などとは異なります。構成が必要な場合、ModelMapper は、文字列参照や XML を使用するのではなく、実際のコードを使用してプロパティと値をマップする、リファクタリングに安全な API を提供します。

詳細については、ModelMapper サイトをご覧ください。

http://modelmapper.org

于 2011-06-24T06:11:06.330 に答える
8

JavaBeans マッパーのコード ジェネレーターであるMapStructに興味があるかもしれません。ソース モデル (ドメイン オブジェクトなど) とターゲット モデル (DTO など) を実装する必要があり、MapStruct はこれらのモデル間のマッピング用にタイプ セーフで高速なコードを生成します (免責事項: 私はこのプロジェクトの作成者です)。

于 2013-08-11T12:34:21.460 に答える
2

GeDA を使用してください - 上記のすべてのマッパーよりもはるかに高速で柔軟です。 http://inspire-software.com/confluence/display/GeDA/GeDA+-+Generic+DTO+Assembler

ウィキには多くの例はありませんが、junits (ソース内) にはそれらがいっぱいです。

于 2013-02-06T00:31:11.287 に答える