このようなデータがあります
{
"status": "success",
"data": {
"data1": {
"serialNumber": "abc123",
"version": "1.6"
},
"data2": {
"irrelvent": [
"irrelvent",
"irrelvent"
]
},
"data3": {
"irrelevantLibs": {
"irrelevantFiles": [
"irrelevant.jar",
"irrelevant.jar",
"irrelevant.jar"
]
}
},
"data4": {
"configuration": "auth"
}
}
}
Jackson JSON Processor を使用しています。オブジェクトの下で行う必要があるのは、それぞれを独自のデータdata
に抽出することです。data(x)
説明するのは難しいですが、詳しく説明します。私の意図は、お客様が JSON データを読みやすくすることです。data(x)
そのため、各オブジェクトを Web サイトのブロック/テーブルに分割することで、JSON データをより使いやすくしようとしています。そのdata1
ため、独立して表示されます。その後data2
、独立して表示されます。したがって、この場合、4 つのdata(x)
オブジェクトがあり、それらの 4 つのオブジェクトを 4 つの異なるオブジェクトに保存し、必要に応じてStrings
表示したいと考えています。私の問題は、Jackson Processor にこれを実行させるにはどうすればよいかということです。
これが役立つかどうかはわかりませんが、JSON データを処理するための現在の JSON 関数は次のとおりです。
public static String stringify(Object o) {
try {
ObjectMapper mapper = new ObjectMapper();
DefaultPrettyPrinter printer = new DefaultPrettyPrinter();
printer.indentArraysWith(new Lf2SpacesIndenter());
return mapper.writer(printer).writeValueAsString(o);
} catch (Exception e) {
return null;
}
}
プロセッサを操作してこれらのデータを分離できることは確かですが、どこから始めればよいかわかりません。
編集: うーん、Jackson は扱うのがかなり難しいパーサーのように見えるので、data
オブジェクトだけを抽出するために Javascript JSON パーサーを使用した方が簡単でしょうか? ジャクソンがJSONデータを文字列に変換しているので、Javascriptを使用するとうまくいきますか?