問題タブ [modelmapper]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2203 参照

java - ソースからModelMapperの同じオブジェクトにマップするにはどうすればよいですか

ModelMapper で次のことをどのように表現できますか: ターゲットのフィールドに入力するには、ソースが null でない場合はソースのプロパティ A を使用し、それ以外の場合はプロパティ B を使用します。

例 (技術的な説明が気に入らない場合は、以下のコード): ModelMapper を使用して、ソース クラスSourceBigThingからターゲット クラスに変換したいとします。TargetSourceBigThingは 2 つのプロパティがあり、1 つは と呼ばれ、もう 1 つはredと呼ばれgreenます。これら 2 つのプロパティは、タイプが異なりRedSmallThingますGreenSmallThing。これらは両方とも と呼ばれるプロパティを持っていますnameSourceBigThingは赤または緑のいずれかを持つことができますが、両方を持つことはできません (もう一方は null です) 。Small Things の名前をターゲット クラスのプロパティにマップしたいと考えています。

サンプルコード:

条件をいじってみましたが、同じターゲットに対して 2 つのマッピングを行うことはできません。これは、ModelMapper がマッピングの重複に対して例外をスローするためです。

このgist で失敗した TestNG-Unit-Test を見つけることができます。

0 投票する
2 に答える
6072 参照

java - ModelMapper でフィールドをグローバルにスキップする

オブジェクトを逆シリアル化するときに、ModelMAPper を使用してオブジェクトを DTO から Impl にマップしています。これは、JAxRS と組み合わせて実行されます。ユーザーが POST/PUT リクエストを作成するときに、「id」をマップしたくありません。

すべてのマッピングで「id」フィールドをスキップする必要があります。すべてのクラスに必ずしも明示的なマップがあるとは限らないため、これを1つずつ実行したくありません。すべての DTO から Impls マッピングへのすべての「id」フィールドをスキップするようにマッパーを構成するにはどうすればよいですか。

ありがとうございました

0 投票する
2 に答える
12667 参照

java - ModelMapper: java.util.Map を POJO にマップする方法は?

java.util.Map を POJO にマップするにはどうすればよいですか?

次のテストでは、構成エラーが発生します。

同様の問題が開かれたようですが、解決されませんでしたhttps://github.com/jhalterman/modelmapper/issues/116

テスト:

エラー:

0 投票する
1 に答える
4190 参照

java - 同じマッピングで Converter と PropertyMap を使用する方法は?

Converter を使用してメンバー リストのマッピングを指定しようとしていますが、PropertyMap を使用して残りのフィールドをマッピングしたいと考えています (以下の例では、'aa' にマッピングする必要があるのはフィールド 'a' だけです)。 .

すべてのマッピングを Converter または PropertyMap だけで指定することはできますか? そうでない場合、同じモデル マッパーで両方を使用するにはどうすればよいですか?

ありがとう。

PS 私はこの例http://bit.ly/10dqanwに従ってTest クラスを作成しました。

0 投票する
2 に答える
6248 参照

java - マネージド Bean で ModelMapper ライブラリを使用するカスタム マッピングにより、NullPointerException が発生する

NullPointerExceptionいくつかのコンテナー管理オブジェクトでカスタム マッパーを作成してマッピングを追加しようとすると、エラーが発生します。@Stateless EJB サービスと @RequestScoped レスト サービスで試してみました。エラーは同様で、次の行で発生します。

バグですか?マッパーがマネージド Bean で何らかのリフレクションを実行しようとしていると想定しているため、 get NullPointerException.

これは私のコードです:

これはエラーです:

0 投票する
0 に答える
1190 参照

c# - Web API ViewModel から DTO から ViewModel へ

私は新しい Web API プロジェクトを開始しており、DTO / ビュー モデルの概念を理解しようとしています。DTO はデータのみを保持する必要があり、最終的に到達する前に必要なビジネス ルールを DTO で実行する必要があることを知っています。コントローラーを適切なビュー モデルに変換 (マップ) します。

ただし、私の場合、PutUser アクションは、クライアントからの Json の形式で「UpdateUserViewModel」全体を想定しています。

私のビジネスレイヤーでは、このビューモデルユーザーをuserDTOにマップし、ビジネスロジックを実行し、userDTOオブジェクトをアクションに返します。アクションはビューモデルにマップされ、応答として返されます。これは正しいアプローチですか、そうすべきですか私のマネージャーは DTO オブジェクトのみを期待しています。基本的に、ViewModel -> DTO のマッピングはどこで行われるべきですか -> ViewModel ですか?

これが正しいアプローチである場合、自動マッパーを使用せずに ViewModel エンティティを DTO にマップし、逆にマップする最良の方法は何ですか?

0 投票する
1 に答える
1967 参照

java - Map から List にマップする方法

2 番目のパラメーターがorMap<String, Object>であると予想される階層からマップする必要があるプロジェクトに取り組んでいます。これまでのところ、ModelMapper はうまく機能していますが、特定の変換に問題があります。次の場合、は単なるマーカー インターフェイスです。StringMap<String, Object>Model

Organization私のマーカーインターフェイスを実装すると仮定しますModelが、それ以外は任意に構造化されているため、次のものを にマップできるようにしたいと思いますClient

要約すると、組織のプロパティにプッシュするときに、ModelMapper にマップ キーをドロップさせ、値リストのみを使用させるにはどうすればよいでしょうか。これに失敗すると、組織のプロパティは空になります。私がこれをしたいのには十分な理由があり、悪い例があると思うかもしれません!

ご意見をお寄せいただきありがとうございます。

編集

a から aへのConverter変換を管理するa を構築しようとしましたが、役に立ちませんでした。与えられた:MapCollection<Model>

これには 2 つの問題があります。

  1. どうやら ModelMapper は継承を見ていないため、の実装がMapソースとして与えられた場合、コンバーターは実行されません。たとえば、ソースとしてHashMapa を受け入れて渡すようにコンバーターを変更すると、機能します。HashMap
  2. context.getGenericDestinationType()一般的な情報を持たない戻り値ListまたはSetクラス。では、ModelMapper は通常の状況で複雑なモデル グラフをどのように構築するのでしょうか?
0 投票する
3 に答える
3789 参照

java - ModelMapper: 暗黙的マッピングと明示的マッピングを混在させますか?

必要最小限のコードを記述するために、ModelMapper に暗黙的なマッピングを生成させ、自動マッピングできなかったプロパティの明示的なプロパティ マッピングのみを記述させようとしています。

ModelMapper に暗黙的なマッピングを生成させる場合:

setSomeId複数の可能なマッピングがあると不平を言います。次に、次を使用してそれを修正しようとしました:

createTypeMapただし、例外が実際にスローされ、カスタム マッピング コードに到達する機会がないため、ModelMapper がまだ不平を言っていることがわかりました。

両方のステートメントを逆にすると、エラーが発生します。

java.lang.IllegalStateException: クラス SourceType およびクラス DestType の TypeMap は既に存在します

完全に省略した場合createTypeMap、ModelMapper は の他のすべてのプロパティDestType(で自動的にマッピングできたもの)のマッピングが欠落していると文句を言いcreateTypeMapます。

暗黙的マッピングと明示的マッピングの混合がサポートされているかどうか、およびその方法がサポートされているかどうか、ドキュメントに明示的な手がかりが見つかりませんでした。

誰でも助けることができますか?