Java 使用jackson操作JSON的一部分

Java 使用jackson操作JSON的一部分,java,json,jackson,Java,Json,Jackson,我有一个JSON对象,类似于: { "myData":[1,2,3], "externalData1":..., ... "externalDataN":... } 我想阅读这个JSON,更新我的数据(比如添加数字“4”)并保存JSON,而不需要知道任何关于外部数据字段的信息 我知道,对于解析,我可以使用@JsonIgnoreProperties,但这样我将丢失保存时的数据。有没有一种方法不需要手动浏览TreeModel就可以做到这一点 谢谢。您可以使用json

我有一个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());