[英]Aggregate all the errors while mapping json to java object using Jackson
我正在尝试使用Jackson ObjectMapper将JSON字符串映射到Java对象。 如果存在映射错误,Jackson会在第一次遇到错误时抛出异常。 有没有办法要求ObjectMapper在收集错误时映射所有字段,并将所有可能的错误一起返回?
Java类
public class Test {
public int field1;
public int field2;
public Test() {}
}
映射器代码片段
String json = "{\"field1\":field, \"field2\":anotherField}";
Test test = new ObjectMapper().readValue(json, Test.class);
上面的代码在尝试将“field”解析为int时失败,并且不检查剩余的字段。 但是,在代码中,field1和field2都不能被解析。 有没有办法立即得到所有潜在的错误,所以我不必一次修复1个错误?
那么,恕我直言,这个问题没有一个简单的解决方案。 但是可以找到特定的解决方案。
如果要忽略缺少的字段,只需使用注释即可
@JsonIgnoreProperties(ignoreUnknown = true)
支持不可解决的数据更复杂。 请在此讨论中查看正确答案,请在此处输入链接说明 。
但是,如果你的JSON在语法上是错误的,那将无济于事,例如,如果缺少昏迷或冒号。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.