将Json对象转换为NiFi中的键值对数组

时间:2018-05-04 05:09:00

标签: json apache-nifi

我有一个这种形式的json对象

{
    "email" : "test@gmail.com",
    "name" : "somename",
    "age" : "someage"
    .
    .
    .
}

我想把上面的json翻译成

[{
  "key" : "email",
  "value": "test@gmail.com"
},
{
  "key" : "name",
  "value": "somename"
},
{
  "key" : "age",
  "value": "someage"
}]

我想使用可用的NiFi处理器进行上述转换。另外,在我的要求中,json对象字段是动态的,我需要构建一个解决方案,将对象转换为具有键和值字段的对象数组。任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:1)

您可以在Spec中使用以下JoltTransformJSON

[
  {
    "operation": "shift",
    "spec": {
      "*": {
        "$": "[#2].Key",
        "@": "[#2].Value"
      }
    }
  }
]

<强>截图 enter image description here