0

私はこのようなjsonオブジェクトを持っています

"price": {
        "sale": {
          "value": 39.99,
          "label": "Now"
        },
        "regular": {
          "value": 69.5,
          "label": "Orig."
        },
        "shippingfee": 0,
        "pricetype": "Markdown",
        "pricetypeid": 7,
        "onsale": true
}

「セール」と「レギュラー」は利用可能な多くの価格タイプの 2 つであるキーワードであり、ラベル「オリジナル」と「現在」はキーワードである (ユニーク) であり、利用可能な多くのラベルの 2 つです。

この価格 json を POJO に格納するのに最適なデータ構造がわかりません。

誰かがこれを案内してもらえますか?

4

1 に答える 1

1

あなたの問題は、販売属性と通常の属性を、おそらく一意の値に列挙を使用できる均一な表現に変換することだと思います。JSON シリアライゼーション/デシリアライゼーションのデフォルトのメカニズムでは、これは難しい場合があります。使用している JSON 解析ライブラリについてはわかりません。Jackson では、フィールドのカスタム シリアライザーとデシリアライザーを (注釈を使用して) 登録する可能性があります。この場合、tou が行うことは、カスタム シリアライザー/デシリアライザーを登録し、JSON のフィールドを希望どおりに処理することです。この投稿を参照できます

コメントに応じて以下を追加しました。

POJO の想定される構造は次のようになります。

publi class Price{

  protected List<PricePointDetails> pricePointDetails;
  protected float shippingFee;
  protected PriceTypes priceType;
  protected priceTypeId;
  protected boolean onSale;

}//class closing

public class PricePointDetails{

 protected PriceTypes priceType;
 protected float value;
 protected LabelTypes labelType;

}//class closing


public enumeration PriceTypes{

 sale,regular,markdown;

}//enumeration closing

public enumeration LabelTypes{

 Orig,Now;

}//enumeration closing

私が追加したのは、データを構造化する 1 つの方法にすぎず、他の方法でも実行できます。

于 2016-09-23T07:20:14.030 に答える