使用Jolt进行json转换:

使用Jolt进行json转换:,json,apache-nifi,jolt,Json,Apache Nifi,Jolt,我希望输入和输出json的格式将与一个字段修改相同,即从name改为firstname。如有进一步线索,将不胜感激。提前谢谢 输入Json: [ { "id": 123, "name": "Pankaj Kumar", "permanent": true, "address": { "street": "El Camino Real", "city": "San Jose", "zipcode": 95014 },

我希望输入和输出json的格式将与一个字段修改相同,即从name改为firstname。如有进一步线索,将不胜感激。提前谢谢

输入Json:

[
  {
    "id": 123,
    "name": "Pankaj Kumar",
    "permanent": true,
    "address": {
      "street": "El Camino Real",
      "city": "San Jose",
      "zipcode": 95014
    },
    "phoneNumbers": [
      9988664422,
      1234567890
    ],
    "role": "Developer"
  },
  {
    "id": 124,
    "name": "Rahul Dravid",
    "permanent": false,
    "address": {
      "street": "Baner",
      "city": "Pune",
      "zipcode": 95014
    },
    "phoneNumbers": [
      9988664422,
      1234567890
    ],
    "role": "Product owner"
  }
]
规范json:

[
  {
    "operation": "default",
    "spec": {
      "*": {
        "id": "id",
        "name": "firstname",
        "permanent": "permanent",
        "address": "Employee address",
        "phoneNumbers": "phoneNumbers",
        "role": "role",
        "fname": "fname"
      }
    }
    }
]
输出json:

[ {
  "id" : 123,
  "name" : "Pankaj Kumar",
  "permanent" : true,
  "address" : {
    "street" : "El Camino Real",
    "city" : "San Jose",
    "zipcode" : 95014
  },
  "phoneNumbers" : [ 9988664422, 1234567890 ],
  "role" : "Developer",
  "fname" : "fname"
}, {
  "id" : 124,
  "name" : "Rahul Dravid",
  "permanent" : false,
  "address" : {
    "street" : "Baner",
    "city" : "Pune",
    "zipcode" : 95014
  },
  "phoneNumbers" : [ 9988664422, 1234567890 ],
  "role" : "Product owner",
  "fname" : "fname"
} ]
预期输出JSon:

[ {
  "id" : 123,
  "firstname" : "Pankaj Kumar",
  "permanent" : true,
  "address" : {
    "street" : "El Camino Real",
    "city" : "San Jose",
    "zipcode" : 95014
  },
  "phoneNumbers" : [ 9988664422, 1234567890 ],
  "role" : "Developer",
  "fname" : "fname"
}, {
  "id" : 124,
  "name" : "Rahul Dravid",
  "permanent" : false,
  "address" : {
    "street" : "Baner",
    "city" : "Pune",
    "zipcode" : 95014
  },
  "phoneNumbers" : [ 9988664422, 1234567890 ],
  "role" : "Product owner",
  "fname" : "fname"
} ]

使用shift操作将名称更改为firstname

[
  {
    "operation": "shift",
    "spec": {
      "*": {
        "id": "[&1].id",
        "name": "[&1].firstname",
        "permanent": "[&1].permanent",
        "address": "[&1].address",
        "phoneNumbers": "[&1].phoneNumbers",
        "role": "[&1].role",
        "#fname": "[&1].fname"
      }
    }
  }
]

使用shift操作将名称更改为firstname

[
  {
    "operation": "shift",
    "spec": {
      "*": {
        "id": "[&1].id",
        "name": "[&1].firstname",
        "permanent": "[&1].permanent",
        "address": "[&1].address",
        "phoneNumbers": "[&1].phoneNumbers",
        "role": "[&1].role",
        "#fname": "[&1].fname"
      }
    }
  }
]

到目前为止你尝试了什么?到目前为止你尝试了什么?