我有一些基于MVC的Spring,它生成代表API输出的JSON / XML。
{
"data" :
{
"users": [
{
"id": "001",
"name: "abc1",
"type": {
"id": "P",
"name": "Permanent"
}
},
{
"id": "002",
"name: "xyz",
"type": {
"id": "C",
"name": "Contractor"
}
}
]
}
}
我正在传递一个带有请求的参数 url?fields = users.id,users.type.id
users.type.id是用户节点中的子节点。 users节点是一个数组。
现在,我想要做的是过滤那些唯一的属性,并根据请求中传递的字段创建响应。
因此对上述过滤条件的响应应该是相同的结构,并且只包含带有值的有用字段。
我正在尝试使用带有点符号的键来构建平面地图,这样我就不会失去要过滤的轨道,然后我将再次重建JSON。我觉得这种方法是不合理的,因为Jackson有.path
和.with
API检查现有路径。但真正的挑战是提取并创建一个与响应JSON匹配的新JSON。
我正在寻找实现这一目标的一些想法。我不想尝试任何第三方libs btw。我知道有些libs在那里。我想更喜欢杰克逊这样做。
如果您有进一步的想法,请随意添加或评论。