Jackson ライブラリを使用して JSON ドキュメントをシリアル化しようとしています。以下は、私が手動で作成した JSON ドキュメントです。ここで、Jackson を使用してこのドキュメントをシリアル化する必要があります
例-A
{
"v" : {
"site_id" : 0,
"price_score" : 0.5,
"confidence_score" : 0.2,
"categories": {
"123" : {
"price_score": "0.5",
"confidence_score": "0.2"
},
"321" : {
"price_score": "0.2",
"confidence_score": "0.4"
}
}
}
}
以下のコードとJacksonを使用して、JSONドキュメントのこの部分を今まで作成できました-
例-B
{
"v" : {
"site_id" : 0,
"price_score" : 0.5,
"confidence_score" : 0.2
}
}
categories
さて、以下のコードを使用して、例 B JSON ドキュメントに (例 A に示すように) 部分のリストを追加する方法を理解できませんか?
public static void main(String[] args) {
Map<String, Object> props = new HashMap<String, Object>();
props.put("site-id", 0);
props.put("price-score", 0.5);
props.put("confidence-score", 0.2);
AttributeValue av = new AttributeValue();
av.setProperties(props);
/**
* this will print out the JSON document like I shown in my Example-B
* but I need to make it look like as in Example-A. I am not sure how
* to achieve that?
*/
System.out.println(av);
// serialize it
try {
String jsonStr = JsonMapperFactory.get().writeValueAsString(attr);
System.out.println(jsonStr);
} catch (JsonGenerationException e) {
e.printStackTrace();
} catch (JsonMappingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
誰でもそれを手伝ってもらえますか?