Java JsonPath:按数组中任何数组的值筛选
我尝试从“*…ou.subscriber”中的subscriberNumber中进行筛选以获取值,该subscriberNumber具有extendedinfo[SOURCE\u或\u TARGET==“TARGET”],但我的jsonpath its不起作用 我尝试的jsonpath:Java JsonPath:按数组中任何数组的值筛选,java,arrays,json,filter,jsonpath,Java,Arrays,Json,Filter,Jsonpath,我尝试从“*…ou.subscriber”中的subscriberNumber中进行筛选以获取值,该subscriberNumber具有extendedinfo[SOURCE\u或\u TARGET==“TARGET”],但我的jsonpath its不起作用 我尝试的jsonpath: $..ou[?(@.extendedInfo[0].value=="TARGET")].subscriber[0].subscriberNumber { "customer": {
$..ou[?(@.extendedInfo[0].value=="TARGET")].subscriber[0].subscriberNumber
{
"customer": {
"customerId": "34975213",
"ou": [
{
"numberOfIDD": 0,
"numberOfIR": 0,
"ouId": 117482315,
"subscriber": [
{
"status": 0,
"subscriberId": "90674393",
"subscriberNumber": "001"
}
],
"responseCode": "FM120100000",
"responseMsg": "Success",
"extendedInfo": [
{
"name": "SOURCE_OR_TARGET",
"value": "BUCKET"
},
{
"name": "SOURCE_OR_TARGET",
"value": "TARGET"
}
]
},
{
"numberOfIDD": 0,
"numberOfIR": 0,
"ouId": 21046276,
"subscriber": [
{
"status": 65,
"subscriberId": "17404432",
"subscriberNumber": "002"
}
],
"extendedInfo": [
{
"name": "SOURCE_OR_TARGET",
"value": "SOURCE"
}
]
}
]
}
}
结果,我想得到这个subscriberNumber=“001”
JSON:
$..ou[?(@.extendedInfo[0].value=="TARGET")].subscriber[0].subscriberNumber
{
"customer": {
"customerId": "34975213",
"ou": [
{
"numberOfIDD": 0,
"numberOfIR": 0,
"ouId": 117482315,
"subscriber": [
{
"status": 0,
"subscriberId": "90674393",
"subscriberNumber": "001"
}
],
"responseCode": "FM120100000",
"responseMsg": "Success",
"extendedInfo": [
{
"name": "SOURCE_OR_TARGET",
"value": "BUCKET"
},
{
"name": "SOURCE_OR_TARGET",
"value": "TARGET"
}
]
},
{
"numberOfIDD": 0,
"numberOfIR": 0,
"ouId": 21046276,
"subscriber": [
{
"status": 65,
"subscriberId": "17404432",
"subscriberNumber": "002"
}
],
"extendedInfo": [
{
"name": "SOURCE_OR_TARGET",
"value": "SOURCE"
}
]
}
]
}
}
感谢您的帮助。糟糕的设计数据结构您希望筛选具有extendedInfo的订阅服务器节点,但不将其包含在订阅服务器中糟糕的设计数据结构您希望筛选具有extendedInfo的订阅服务器节点,但不将其包含在订阅服务器中数据结构来自旧系统。我无法控制和改进它们。数据结构来自遗留系统。我无法控制和改进它们。