Ich versuche, in einem etwas komplexen JSON-String zu lesen, und ich habe Probleme mit verschachtelten Elementen und wie Sie sie abrufen.Problem mit der Konvertierung von JSON in Java
Mein Java-Code sieht wie folgt aus
String longJson = "{'Patient': {'Name': {'Given': 'FirstName','Family': 'LastName'},'Gender': 'Female','DOB': '1980-07-04T00:00:00.0000000','AgeInYears': 36,'MartialStatus': 'Single', 'Race': 'Race','Ethnicity': 'Ethnicity','Class': 'Inpatient','Address': {'StreetAddress': 'StreetAddress','City': 'City','State': 'State','ZipCode': 'ZipCode', 'Country': 'Country'}}}";
Gson gson = new Gson();
PrescriptionReq sample = null;
sample = gson.fromJson(longJson, PrescriptionReq.class);
String firstName = sample.getPatient().getName().getGiven();
//String firstName = sample.patient.name.getGiven();
System.out.println("Testing: "+ firstName);
Wenn ich entweder Ansatz führe ich ein Null-Punkt Ausnahme
Hier erhalten die Json in eine besser lesbare Ansicht
{
"Patient": {
"Name": {
"Given": "FirstName",
"Family": "LastName"
},
"Gender": "Female",
"DOB": "1980-07-04T00:00:00.0000000",
"AgeInYears": 36,
"MartialStatus": "Single",
"Race": "Race",
"Ethnicity": "Ethnicity",
"Class": "Inpatient",
"Address": {
"StreetAddress": "StreetAddress",
"City": "City",
"State": "State",
"ZipCode": "ZipCode",
"Country": "Country"
}
}
}
Hier sind meine Klassen:
public class PrescriptionReq {
private Patient patient;
public Patient getPatient(){
return patient;
}
public class Patient {
Name name;
Address address;
public Name getName(){
return name;
}
//Other variables
}
public class Name {
private String Given;
private String Family;
public String getGiven() {
return Given;
}
public String getFamily() {
return Family;
}
}
}
Ich bin mir nicht sicher, ob ich den JSON falsch speichern oder falsch abrufen werde. Jede Hilfe wird sehr geschätzt!
Welcher Teil ist null? – SLaks
Zeichenfolge firstName = sample.getPatient(). GetName(). GetGiven(); gibt eine Nullzeigerausnahme zurück – mmm2893