Skip to main content

改变JSON对象的结构

目的

把JSON数据中某个JSON对象改成JSONArray输出。

示例说明

把user对象修改成一个数组。

输入数据:

{
"name": "数聚蜂巢",
"url": "https://www.orchsym.com",
"published_date": "2018/05/25",
"user": {
"created_time": "2018/12/25 14:30:05",
"updated_time": "2019/01/11 11:10:25",
"delete_time": "2019/07/11 17:30:00"
}
}

期望输出数据:

{
"name": "数聚蜂巢",
"url": "https://www.orchsym.com",
"published_date": "2018/05/25",
"user": [
{
"description": "created_time",
"value": "2018/12/25 14:30:05"
},
{
"description": "updated_time",
"value": "2019/01/11 11:10:25"
},
{
"description": "delete_time",
"value": "2019/07/11 17:30:00"
}
]
}

流程编排

流程说明

  • 测试数据由组件GenerateFlowFile生成,且通过配置自定义文本参数的内容与上面输入数据相同的JSON数据。

    注意:切记将该组件调度下的运行安排设置大些,否则将瞬间生成大量测试数据;两个GenerateFlowFile组件设置是一样的。

  • 方式1:通过设置组件JoltTransformJSON的DSL为移位来进行JSON对象结构的转换。

  • 方式2:通过设置组件JoltTransformJSON的DSL为链式规则来完成JSON对象的转换。

输出结果

输出结果与期望值一致。

流程模板

参见附件(请右键另存保存):JSON对象转换模板