How to parse complex Json response file in Java

Parsing of JSON file may get bit complicated and confusing if you are not sure which library to use. There are different ways and Implementation available however I chose to use GSON library since it looked feasible for the JSON file which I was trying to parse. Sample JSON is provided below

In this example, I have saved my response in a file for demonstration.
Objective: Get the value of PatientID from this JSON

{
  "response": {
    "body": {
      "patients": {
        "patient": [
          {
            "patientID": "ALM22346789",
            "submittedStatus": "In Progress",
            "patientType": "Inpatient",
            "submissionDate": "2020-10-15"
          }
        ]
      }
    },
    "status": {
      "statusCode": "200",
      "statusMessage": {

      }
    }
  }
}

Enter fullscreen mode Exit fullscreen mode

Imports used:
import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;

Enter fullscreen mode Exit fullscreen mode

Step1:
Read the file from the saved location and store it in JsonObject

JsonObject myobject = (JsonObject) new JsonParser().parse(new FileReader("MyFilePath"));

Enter fullscreen mode Exit fullscreen mode

Step2: Hold the “response” in a JSON Object

JsonObject response = (JsonObject) myobject.get("response");

Enter fullscreen mode Exit fullscreen mode

Step3: Drill down further and store the “body” and “patient” in JSON Object

JsonObject body = (JsonObject) response.get("body");
JsonObject patients= (JsonObject) body.get("patients");

Enter fullscreen mode Exit fullscreen mode

Step4: “patient” tag is in a Array hence we will store it in Array Object

JsonArray patientbody= (JsonObject) patients.get("patient");
JsonObject patient0= patientbody.get(0).getAsJsonObject();

Enter fullscreen mode Exit fullscreen mode

Step5: Next we will fetch the “patientID”

String patientID =caseBody0.get("patientID").getAsString(); System.out.println(patientID);

Enter fullscreen mode Exit fullscreen mode

OutPut: (as printed in console)

ALM22346789

Enter fullscreen mode Exit fullscreen mode

原文链接:How to parse complex Json response file in Java

© 版权声明
THE END
喜欢就支持一下吧
点赞5 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容