从 JSON 中的多值元素中过滤单个元素

Filter single element from a multi value element in JSON

在我的测试中,我需要比较预期和实际的 JSON 响应。但是 JSON 响应是有限的,具体取决于角色。所以我需要在比较时排除某些字段。 下面是 JSON,我想从中过滤掉 2 个东西。
1.公司编号 2.状态。

{
userId=dg4d6g4dg45-rgdre-543-dfg,
userName=test123,
effectives=[  
   {  
     companyId=345634-54-547-74,
     companyName=xyz,
     roleId=685-345863490-634,
     roleName=This is the test Role
  },
  {  
     companyId=345634-54-547-74,
     companyName=xyz,
     roleId=685-345863490-634,
     roleName=This is the test Role
  }
],
status=Active
}

你能告诉我如何实现这一点吗? 我探索了 SimpleBeanPropertyFilter 的 filterOutAllExcep 方法,但随后我将不得不找出逻辑来记住所有应该包含的字段。

我想我已经找到了解决办法。 我正在使用对象映射器并将数据模型转换为地图。 然后迭代地图并删除字段。 平面过滤很简单,但必须为嵌套字段调整一些逻辑。

        // Convert the DataModel into a Map object
        ObjectMapper mapper = new ObjectMapper();
        Map mainObjectMap = mapper.convertValue(object, Map.class);