問題タブ [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 に答える
874 参照

android - モデルマッパーはアンドロイドで使用するように設計されていますか?

私は GSON でレトロフィットを使用しており、オブジェクト抽象化の別のレイヤーを作成したいと考えており、Modelmapper は私のユースケースに適しているようです。

Androidでモデルマッパーを使用できますか? 注意が必要なパフォーマンス上の注意事項はありますか?

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

java - ModelMapper: コレクションを他の構造のコレクションにマップする

ビジネス オブジェクトをエンティティにマッピングしますが、エンティティの構造がビジネス オブジェクトと異なる場合があります。
BO はエンティティの内部構造について何も知る必要がないため、文字列としてuserCategoriesビジネス オブジェクトに保存されます。RecipeBoこれらの文字列は のリレーションにマップする必要がありRecipeRecipeUserCategoryRelそれに加えて、別のフィールドもこれにマップする必要がありuserIdます。RecipeBoRecipeUserCategoryRel

私のアプローチ(これは機能します)は、ラッパーを作成し、手作業でリレーションを手動で作成することですが、これはいじくり回すように見えます:

私がBoMapperで行っていること、例えばコンバーターなどを使用することのより良いアプローチはありますか? 難しいのは、リストの各要素をマップし、userIdフィールドも追加することです。

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

java - ModelMapper の ClassCastException: EnhancerByModelMapper をキャストできません

Play 2.4.2 (最新バージョン) フレームワーク アプリケーションで ModelMapper 0.7.4 (最新バージョン) を使用しています。Play 2.4 には内部の Google Guice 依存性注入ソリューションが組み込まれており、Play 2.4 を Spring で動作させるために、アプリケーションは Guice から Spring Framework 依存性注入ソリューションに手動でブリッジされています。つまり、通信は Play から Guice、Spring へと流れます。

物事 (Spring による依存性注入) はうまく機能しているように見えますが、テスト開発環境でランダムな Java クラスが変更されると、Play はクラスまたは webapp を自動的にリロードします。このリロードは一般に問題なく動作しますが、この Play セットアップで ModelMapper が Spring Bean として使用されている場合、ModelMapper で問題が発生するようです。(ただし、セットアップ内で手動で Spring コンテナーを作成し、ModelMapper に Spring Bean として接続することによって、Guice-Spring ブリッジをバイパスしたときに問題を再現できませんでした。)

エラーは次のとおりです。

これは、クラスのリロード時にのみ発生し、リロードが行われていない場合には発生しません。また、modelMapper.addMappings(aPropertyMap) を使用しない場合も問題は発生しません。Spring AppConfig クラスは次のようになります。

ModelMapper には、プレーンな Spring @Autowire インジェクションを使用してアクセスします。User および CreateUserFormDTO クラスは単なる POJO です。

問題は何でしょうか?

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

swift - JSON の Mantle 無視キー

マントル モデルを作成するときに、辞書内のキーを無視しようとしています。json に以下が含まれているとします。

最初に私はモデルを持っています

問題は、「このクラスはキー prop2 のキー値コーディングに準拠していません」というエラーが表示されることです。

JSONKeyPathsByPropertyKeyまた、辞書を使用してモデルを初期化するときにメソッドが呼び出されず、try! super.init(dictionary: dictionaryValue, error: ())モデルから JSON を生成してプロパティに JSON と同じキーを強制するときにのみ呼び出されることにも気付きました。特定のキーを無視できるようにしたい理由は、バックエンド サービスが変更される可能性があり、追加情報が呼び出しに追加されているか、単にまったく無関係であるため、必ずしも更新をロールバックする必要がないためです。

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

jdbi - JDBI、モデル マッパー、および SQL オブジェクト クエリ

モデル マッパーを JDBI で使用していますが、モデル マッパーを SQL オブジェクト クエリで使用できません。

たとえば、私はこの選択をしています

ドキュメントには、結果をマップするには ResultSetMapper または ResultSetMapperFactory を使用する必要があると書かれています。モデルマッパーを使用するマッパーを書きたいのですが、できるかどうかを理解するのに問題があります (以下のコードは機能しません)。ExampleMapper クラスのメソッドは次のとおりです (SqlObject で使用されるアノテーションは です @RegisterMapper(ExampleMapper.class) )

モデルマッパーを使用してresultSetをマップするにはどうすればよいですか? ありがとう、シルビア

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

java - ModelMapper 構成

ModelMapperブール値を char にマップしようとしているときに、説明できない動作が見られます。

(確認しましたが、問題はLombokに関連していません)。

これは、意図した「Y」と「N」ではなく、文字「t」と「f」を生成します。

アイテム(インスタンス=t)

アイテム(インスタンス=f)

ModelMapper構成がどのように見えるか知っている人はいますか?

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

java - エンティティ更新で JPA と ModelMapper を機能させる

私のcrudコントローラーでは、更新操作中に次のことが起こっています

クライアントは「POST /{id}」へのリクエストを行い、リクエスト本文内で DTO を送信します。次に、ModelMapper を呼び出して、DTO をデータベース エンティティに変換します。その後、entity の Id フィールドを、クライアントから送信された 1 つに設定しました。リポジトリの保存を行います。

自動生成されたフィールドを手動で設定しようとしているため、これは失敗します (更新ではなく、新しいエンティティを作成します)。JPA EntityManager には merge メソッドがありますが、それが私が望むものかどうかはわかりません。

そこで、コードを次のように変更します。最初に要求された ID を持つエンティティを取得し、次に ModelMapper にそのフィールドを上書きするように要求し、最後にリポジトリの保存を行います。ただし、新しいインスタンスを構築する代わりに、ModelMapper に既存のオブジェクトを更新させることはできませんでした。ドキュメントによると可能に見えますが、プロバイダーとタイプマップの間で迷子になりました。

したがって、私が望むのは、JPAに一時的なエンティティで更新を行うよう説得するか、ModelMapperに既存の(およびjpaが添付された)エンティティのフィールドを設定するよう説得することです。

単純なタスクがこれほど複雑になったという事実は、私が何か根本的に間違ったことをしているのではないかと疑っています。解決策を教えてもらえますか?