2017-12-08 3 views
0

JavaでJsonを使い慣れていて、する。Javaを使用して、Jsonメッセージを受け取り、フィールドのサブセットを見つけ、フィールドをチェックしてから新しいコード値にマップしてJsonとしてエクスポートします。

私はJSON形式のメッセージに取っているJavaの使用は、何かのように:今

{ 
    "toy": [ 
     { 
      "color":"red", 
      "age":"2-4", 
      "type": { 
       "format":"electronic", 
       "batteries":"Y" 
      }, 
      "price":"$50" 
     } 
    ] 
} 

、私はこれらのいくつかは、上記のフィールドに異なる値を通じ来持っていると言います。私はメッセージを受け取り、新しいフィールドにマッピングするために特定のフィールドを必要とするいくつかの要件に基づいてフィールドを抽出したいと思います。たとえば、次のように

Requirement1

フィールド:色

マップへ:カラー

フィールド:バッテリー

マップへ:バッテリーは必要?

そこで出力は次のようになります

{ 
    "Toy": [ 
     { 
      "Colour":"red", 
      "Batteries Required?":"Y" 
     } 
    ] 
} 

は、異なるフィールドまたはフィールドの組み合わせ、または(通貨換算など)フィールドの変換を必要とする他の要件があるかもしれないと仮定する。

私は、最もクリーンで効率的な方法が何であるか知りたいと思います。この種のことはすでにJava内のJsonに存在しますか?

答えて

0

XSLTがXMLの場合のようにJoltを使用してJsonオブジェクトを変換することができます:https://github.com/bazaarvoice/jolt。このlibを使用すると、入力を読み込んでルールに基づいてjsonを生成する "変換ルール"を定義できます。

代わりに、xpathのようにjsonオブジェクトの要素を見つけることができるJson Pathがあります。https://github.com/json-path/JsonPath

関連する問題