我的类看起来像:
Class A{
private String amount;
@JsonIgnore
private Map<String,String> unknownFields = new HashMap<>();
}
我的ObjectMapper
已DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES = false
配置。
Json input:
{
"amount": 5000,
"note" : "Amount is 5000"
}
在这种情况下,我需要注释位于unknownFields
地图中:
我正在寻找一些注释,例如
@OnUnknownProperties
public void OnUnknownProperties(String name, String value){
unknownFields.put(name,value);
}
您可以使用
@JsonAnySetter(@JsonAnyGetter)在域类中注释方法并对其进行处理。一个很好的例子在这里:http://www.jasonwhaley.com/handling-top-level-metadata-with-jackson/.让你的DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES=假。