如何在将jsonObject转换为模型对象时检测缺失的字段
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在将jsonObject转换为模型对象时检测缺失的字段相关的知识,希望对你有一定的参考价值。
我正在使用Web服务发送一个json对象。接收调用的方法具有模型Object的方法参数,用于传递相应的jsonObject输入。 JSONObject已成功转换为模型对象,但我无法从模型对象中测试我的一些响应。
例如:如果输入json中缺少任何必填字段,或者输入json中的任何字段设置为null,则在这两种情况下,模型对象字段将显示为null。
我无法检测null是否因为字段缺失或字段被设置为null。
谁能建议我一个解决方案?
我的最后一个出路是,我将接收方法参数输入为String而不是我的模型对象,然后使用条件检查,检查输入字符串并相应地获取我的响应。但是我的json输入对象非常大,我希望有更好的方法比这更好。
这是春季启动项目。
代码片段:
JSON Object being sent
{"orgType":null, "orgLocation": "Geneva" , //other fields}
@RequestMapping(value="/addOrganizations", method= RequestMethod.POST)
public ResponseEntity addOrganization(@RequestBody Organization organization){
// code goes here
}
如果我尝试
{"orgType":null, "orgLocation": "Geneva" , //other fields}
要么:
{"orgLocation": "Geneva" , //other fields}
并在addOrganization方法中使用调试器进行检查,然后在两种情况下该值都为null。
型号类:
public class Organization{
@JsonInclude(JsonInclude.Include.NON_EMPTY)
private String orgType;
private String orgLocation;
// other fields and getters and setters.
}
我正在浏览StackOverflow的链接,最后通过此链接得到了答案
Jackson: What happens if a property is missing?
思想可能对其他人有帮助。
谢谢
以上是关于如何在将jsonObject转换为模型对象时检测缺失的字段的主要内容,如果未能解决你的问题,请参考以下文章
AsyncTask #3 解析 JSON 对象时出错。字符串无法转换为 JSONObject
如何将使用 Mask Rcnn 在自定义对象检测上创建蒙版图像的 Keras 模型转换为 CoreML 模型以在 iOS 应用程序中使用?