Мы должны проверить значение, отправленное в нашей полезной нагрузке запроса REST API, с помощью значения ответа, попробовали следующее и смогли распечатать массив JSON. Как получить конкретный объект внутри массива тела JSON запроса.
Запросить данные:
{
"Testinfo":{
"abc":2,
"xyz":"2020-01-01"
},
"Details":{
"eductation":{
"test1":9,
"test2":100,
"test3":50
},
"neweductiona":{
"test1":"value",
"test2":"Draws"
}
}
}
Код:
jsonObject = (JSONObject) JSONValue.parse(request);
JSONObject Testinfo = (JSONObject) jsonObject.get("Testinfo");
JSONObject Details = (JSONObject) jsonObject.get("Details");
System.err.println("Testinfo value in the request is: " + Testinfo);
System.err.println("Details value in the request is: " + Details);
Вывод:
{
"abc":2,
"xyz":"2020-01-01"
},
{
"eductation":{
"test1":9,
"test2":100,
"test3":50
},
"neweductiona":{
"test1":"value",
"test2":"Draws",
}
Как получить конкретное значение, например "Details.eductation.test3"
Пробовал ниже
JSONArray jsonArray = (JSONArray) JSONValue.parse(request)
но появляется сообщение об ошибке:
java.lang.ClassCastException: net.minidev.json.JSONObject cannot be cast to net.minidev.json.JSONArray
Пожалуйста, направьте.