Hi,我想用jslt转换json,但遇到了无法解决的问题
- 1.输入json数据如下
{
"user_id": "001",
"friends": [{
"friend_id": "002"
}, {
"friend_id": "003"
}, {
"friend_id": "004"
}]
}
- 1.然后,输出我期望的json数据如下:
[{
"user_id": "001",
"friend_id": "002"
}, {
"user_id": "001",
"friend_id": "003"
}, {
"user_id": "001",
"friend_id": "004"
}]
- 1.在jslt表达式中,我使用for的表达式来遍历数组字段friends:
[
for (.friends) {
"user_id": .user_id,
"friend_id": .friend_id
}
]
- 1.但是,treansform结果无法获取字段user_id
[{
"friend_id": "002"
}, {
"friend_id": "003"
}, {
"friend_id": "004"
}]
如何访问数组字段友元作用域之外的字段user_id?期待您的帮助,谢谢!
2条答案
按热度按时间7eumitmz1#
另一个答案是正确的,但比它需要的更复杂。这就足够了:
请注意,如果你真的想报告错误,你可以这样做:
使用
error
可以在Java级别上将其转换为异常。不支持父操作符的原因是Jackson在其节点中没有父指针。这是一个性能特性,因为这意味着节点可以在多个地方重用,从而节省CPU和内存。
57hvy0tb2#
您需要为
user_id
使用一个变量,然后可以在循环中引用该变量。以下应符合您的要求: