Java 使用jackson操作JSON的一部分
我有一个JSON对象,类似于:Java 使用jackson操作JSON的一部分,java,json,jackson,Java,Json,Jackson,我有一个JSON对象,类似于: { "myData":[1,2,3], "externalData1":..., ... "externalDataN":... } 我想阅读这个JSON,更新我的数据(比如添加数字“4”)并保存JSON,而不需要知道任何关于外部数据字段的信息 我知道,对于解析,我可以使用@JsonIgnoreProperties,但这样我将丢失保存时的数据。有没有一种方法不需要手动浏览TreeModel就可以做到这一点 谢谢。您可以使用json
{
"myData":[1,2,3],
"externalData1":...,
...
"externalDataN":...
}
我想阅读这个JSON,更新我的数据(比如添加数字“4”)并保存JSON,而不需要知道任何关于外部数据字段的信息
我知道,对于解析,我可以使用@JsonIgnoreProperties
,但这样我将丢失保存时的数据。有没有一种方法不需要手动浏览TreeModel就可以做到这一点
谢谢。您可以使用
json simple
,它不会为您提供到POJO的数据绑定,但它仍然比您自己解析要方便得多。使用:
jackson streaming api可能可以工作,但您仍然必须使用外部数据并使用jackson将其写入缓冲区。如果您想要修改其他属性或生成特定的JSON树,则可以使用POJO编写自定义序列化程序并将@JsonSerialize注释设置为所需的POJO属性或POJO类。
JSONObject root = new JSONObject(json);
JSONArray myData = (JSONArray) root.get("myData");
myData.remove(0);
myData.put(4);
System.out.println("root = " + root.toString());