我正在使用jolt将一个json转换为另一个json但是我没有得到正确的输出json给定输入json
输入:
{
"user":{
"homePhone":"12345678901",
"mobilePhone":"12346750983",
"email":"test@example.com"
}
}
预计Json:
{
"contact":[
{
"class":"PhoneClass",
"phoneNumber":"12345678901",
"mobile":false,
"preferred":false
},
{
"class":"PhoneClass",
"phoneNumber":"12346750983",
"mobile":true,
"preferred":true
},
{
"class":"EmailClass",
"email":"test@example.com"
}
]
}
在输出json中还有一些额外的字段,我还需要添加。
答案 0 :(得分:0)
这有多少是动态的?如果您的示例知道您将拥有这三个输入字段并且需要三个输出对象,则此规范应该有效:
[
{
"operation": "shift",
"spec": {
"user": {
"homePhone": "contact[0].phoneNumber",
"mobilePhone": "contact[1].phoneNumber",
"email": "contact[2].email"
}
}
},
{
"operation": "default",
"spec": {
"contact[]": {
"0": {
"class": "PhoneClass",
"mobile": false,
"preferred": false
},
"1": {
"class": "PhoneClass",
"mobile": true,
"preferred": true
},
"2": {
"class": "EmailClass"
}
}
}
}
]