[英]Limiting the json fields that need to be deserialized into java object's fields
我有一个Json:
{
"a1":"a1Value",
"a2":"a2Value",
"a3":"a3Value",
"a4":"a4Value",
"a5":"a5Value"
}
Java类是:
class Response {
private String a1;
private String a2;
private String a3;
//public getters and setters
}
现在我只需要将Json中的3个字段反序列化为对象的3个字段,我使用的是Spring 3.2.2 MVC,用于REST支持(其余模板:getForEntity()),并在此过程中收到错误,怎么能我忽略了json中的这些字段? 此外,还有一些方法,在序列化时,我只序列化那些在序列化时具有非空值的对象属性。
在类级别添加此批注以忽略未知属性:
@JsonIgnoreProperties(ignoreUnknown = true)
或者使用ObjectMapper
:
objectMapper.configure
(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES, false);
仅适用于非null:
@JsonInclude(Include.NON_NULL)
或者对于Jackson ObjectMapper
:
objectMapper.setSerializationInclusion(Include.NON_NULL);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.