使用JOLT将JSON列表处理为JSON列表

时间:2019-06-10 14:27:10

标签: json transformation jolt

我有一个输入的json列表,如下所示:

[
  {
    "key_id": "1111",
    "key_1": "value_1",
    "key_2": true,
    "key_3": {
      "key_3_1": "value_3_1",
      "key_3_2": "value_3_2"
    }
  },
  {
    "key_id": "2222",
    "key_1": "value_1",
    "key_2": true,
    "key_3": {
      "key_3_1": "value_3_1",
      "key_3_2": "value_3_2"
    }
  }
]

我需要将此列表进行如下转换:

[
  {
    "id": "1111",               // Extract from key_id
    "data": {                   // complete json goes here within 'data'
      "key_id": "1111",
      "key_1": "value_1",
      "key_2": true,
      "key_3": {
        "key_3_1": "value_3_1",
        "key_3_2": "value_3_2"
      }
    }
  },
  {
    "id": "2222",
    "data": {
      "key_id": "2222",
      "key_1": "value_1",
      "key_2": true,
      "key_3": {
        "key_3_1": "value_3_1",
        "key_3_2": "value_3_2"
      }
    }
  }
]

列表中的每个json应该转换为带有 id data 字段的另一个json。 data 字段应具有完整的json,而 id 则应为 key_id

1 个答案:

答案 0 :(得分:1)

此规范应为您提供预期的输出:

[
  {
    "operation": "shift",
    "spec": {
      "*": {
        "key_id": "[&1].id",
        "@": "[&1].data"
      }
    }
  }
]