在jackson json反序列化到java中的JSONObject类时忽略键的缺失值

时间:2017-02-03 12:54:54

标签: java json jackson

在示例中

如果json对象的年龄为' age',

 String source = "{
    name : John;
    age : ;
    score: 100
 }"

这里的json可能格式错误,我对此不太确定。我想忽略那些没有价值的钥匙。

JSONObject object = objectMapper.readValue(source, JSONObject.class);

获取错误:

com.fasterxml.jackson.databind.RuntimeJsonMappingException:[simple type,class org.json.JSONObject] value的实例化失败:在[某些行号]处缺少值(通过引用链:com.bial.rs.model)

注意:JSONObject来自org.json

1 个答案:

答案 0 :(得分:0)

如果你想避免NullPointerException,你最好使用optString()方法从JSON中提取值

如果您是在任何时候从JSON获取数据,那么您可能拥有特定Key值的空数据,而不是实现Null条件,更好地利用这个优化方法optString(“age”)它将返回null并且不抛出JSONException