Я читаю REST API в формате JSON. При чтении JSON я не могу извлечь листья с помощью JSONPath. Итак, что я хотел бы сделать, это запустить строку JSON с Java и получить нужные мне значения, они всегда в одном и том же порядке. Это строка JSON, из которой мне нужно извлечь значения:
{
"10516": {
"estimated": {
"value": 10.0,
"text": "10.0"
},
"completed": {
"value": 7.5,
"text": "7.5"
}
},
"10244": {
"estimated": {
"value": 15.5,
"text": "15.5"
},
"completed": {
"value": 7.5,
"text": "7.5"
}
},
"10182": {
"estimated": {
"value": 12.0,
"text": "12.0"
},
"completed": {
"value": 10.0,
"text": "10.0"
}
},
"10391": {
"estimated": {
"value": 16.0,
"text": "16.0"
},
"completed": {
"value": 3.0,
"text": "3.0"
}
},
"10183": {
"estimated": {
"value": 12.0,
"text": "12.0"
},
"completed": {
"value": 7.0,
"text": "7.0"
}
},
"10123": {
"estimated": {
"value": 11.5,
"text": "11.5"
},
"completed": {
"value": 5.5,
"text": "5.5"
}
},
"10447": {
"estimated": {
"value": 7.0,
"text": "7.0"
},
"completed": {
"value": 3.0,
"text": "3.0"
}
}}
Как видите, идентификатор 10516
имеет estimated
и completed
, я хотел бы извлечь эти значения для каждого идентификатора. Таким образом, вывод должен выглядеть следующим образом:
ID | ESTIMATED | COMPLETED
10516 | 10.0 | 7.5
10244 | 15.5 | 7.5
10182 | 12.0 | 10.0
и так далее..
важно, чтобы для каждого идентификатора значения находились в одной строке, потому что мне нужно загрузить их в мою базу данных PostgreSQL и соединить эти данные с другими данными в идентификаторе.
Моя идея состоит в том, чтобы подсчитать значения, заключенные в кавычки, и получить 1-е, 5-е, 9-е, 10-е, 14-е и 18-е значения и так далее. потому что строка JSON всегда в одном и том же порядке, я думаю, это можно сделать так.
пожалуйста, помогите и имейте в виду, что у меня нет никакого опыта в Java, и реализация будет выполнена в Talend Open Studio. также см. мой другой вопрос, который поднял этот вопрос, потому что JSONPath не может мне помочь: Файл JSON с JSONpath
10516
,10244
и т. д.)? потому что с JSONPath кажется, что вы не можете извлекать значения без меток... при извлечении значений изestimated
иcompleted
у меня нет проблем, потому что у них есть метка, к которой я могу обратиться, - person StackedOverflow   schedule 13.10.2016