我必须使用jackson将json转换为对象。这堂课就像:
class Country {
int a;
int b;
}
我得到了json:
{"country":{"a":1,"b":1}}
但是当我试图反序列化时,它会给我以下错误
org.codehaus.jackson.map.JsonMappingException: Unrecognized field "country"
如果我删除“country”,我就可以获得该对象。
有什么方法可以让杰克逊从json字符串中忽略“country”吗?
提前致谢。
答案 0 :(得分:4)
这是Jackson的正确行为,Country对象的实际json表示应该没有顶级国家。如果您的json绝对具有顶级国家/地区属性,那么更简洁的方法是使用这样的包装器Country类:
class WrapperCountry {
Country country;
}
这样json表示应该正确地反序列化为WrapperCountry对象,你可以从中检索国家。