从JsonObject内的Json删除密钥

从JsonObject内的Json删除密钥,第1张

从JsonObject内的Json删除密钥

如果Gson像Jackson一样(我认为是这样),则必须首先

JsonObject
从根对象中获取“帐户”,然后删除成员“ email”,例如:

jsonObj.getAsJsonObject("accounts").remove("email");

或者,也可能是首选的方式,您可以将json对象映射到POJO(具有字段“ status”,“ accounts”和“
accounts”的字段将指向另一个POJO),导航到accounts-
POJO并设置“电子邮件”在那里无效。然后,将根POJO重新格式化为JSON,并应用设置以忽略具有空值的字段。

编辑 (评论中问题的答案):

简而言之,我不知道是否有内置功能,但是应该可行。

问题是,如果仅提供诸如此类的密钥,则

email
可能会遇到多个密钥的情况,因此很难确定正确的密钥。因此,最好提供键as
accounts.email
并将“键”拆分为子表达式,然后使用这些部分遍历Json树或将Json转换为POJO并使用某种表达语言(例如Java
EL或OGNL)进行遍历POJO。

如果要删除所有命名的属性

email
,则可以遍历整个json树,请检查是否存在具有该名称的属性,如果是,则将其删除。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4942680.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-13
下一篇 2022-11-13

发表评论

登录后才能评论

评论列表(0条)

保存