繁体   English   中英

在 jackson json 反序列化为 Java 中的 JSONObject 类期间忽略键的缺失值

[英]Ignore missing values of key during jackson json deserialize to JSONObject class in java

在示例中

如果 json 对象缺少 'age' 值,

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

这里的 json 可能格式错误,我不确定这一点。 我想忽略那些没有值的键。

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

错误获取:

com.fasterxml.jackson.databind.RuntimeJsonMappingException:[简单类型,类 org.json.JSONObject] 值的实例化失败:[某些行号] 处缺少值(通过参考链:com.bial.rs.model)

注意:JSONObject 来自org.json

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

如果您随时从 JSON 中获取数据,您可能会有特定 Key 值的空数据,此时与其实现 Null 条件,不如使用这种优化方法 optString("age") 它将返回 null 并不抛出 JSONException

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM