繁体   English   中英

在Jackson中反序列化JSON属性

[英]Deserialize JSON property in Jackson

我有这样的JSON文件:

{
    "id1" : {
       ...
    },
    "id2" : {
       ...
    }
}

我正在使用mapper.readerForUpdating(object).readValue(jsonFile) ,希望读者仅读取与该object的类在批注中提供的ID相对应的数据。 有没有一种方法可以用“ id1”或其他注释object的类,以便mapper仅从“ id1”中读取值?

如果您的id1是静态的,我可以想到一个简单的解决方案。 创建一个包装器类,其中包含一个与所需字段相对应的getter(和setter), 忽略所有其他属性,如下所示:

@JsonProperty("id1")
public MyBean getCustomId()
{
     ...
}

@JsonProperty("id1")
public void setCustomId()
{
     ...
}

第二种选择是使用@JsonSerialize@JsonDeserialize批注并编写您的自定义逻辑。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM