小编典典

使用Jolt重新建立JSON对象的父级

java

我想使用Jolt将JSON对象向下移动一级。这是我的输入数据:

{
    "rating": {
        "primary": {
            "value": 3,
            "max": 5
        },
        "quality": {
            "value": 3,
            "max": 7
        }
    }
}

我正在使用以下规范文件:

[
  {
    "operation": "shift",
    "spec": {
      "$": "NEWPARENT"
    }
  }
]

我目前正在生成此输出:

{
  "NEWPARENT" : "root"
}

但是,我的目标是产生:

{
  "NEWPARENT": {
    "rating": {
      "primary": {
        "value": 3,
        "max": 5
      },
      "quality": {
        "value": 3,
        "max": 7
      }
    }
  }
}

谁能帮助我创建正确的规格文件?


阅读 336

收藏
2020-11-30

共1个答案

小编典典

规格

[
  {
    "operation": "shift",
    "spec": {
      "@": "NEWPARENT"
    }
  }
]

仅供参考,您看到的“根”是Jolt处理顶级JSON输入可以是List或Map以及您希望能够将List转换为Map的事实的一种产物。 (反之亦然)。

因此,摇动“包装”输入,以便“总是”转换具有单个键“ root”且值为输入的Map。

2020-11-30