ich einen String habe von einem Dienst zurückgegeben, in diesem JSON-Format:Konvertieren ein JSON String in Java Object
String message = {
"Tickets":
[{
"Type": "type1",
"Author": "author1",
"Rows":
[
{
"Price": "100.0",
"Date": "24/06/2016",
"Amount": "10"
},
{
"Type": "Comment",
"Value": "some comment goes here"
}
],
"ID": "165"
}],
"Desk": "desk1",
"User": "user1"
}
Ich brauche es zu analysieren und in ein Java-Objekt zu konvertieren. Ich versuchte, einen dom wie diese zu erstellen:
public class TicketWrapper{
private Ticket ticket;
private String desk;
private String user;
}
public class Ticket {
private String type;
private String author;
private List<Row> rows;
private String id;
}
public class Row1{
private float price;
private Date date;
private int amount;
}
public class Row2{
private String type;
private float value;
}
Dann versuche ich es mit Google Gson zu analysieren, auf diese Weise:
TicketWrapper ticket = gson.fromJson(message, TicketWrapper.class)
aber wenn ich es System.out.println(gson.toJson(ticket))
drucken, druckt es: {“ Schreibtisch ": 0," Benutzer ": 0}
Ich weiß nicht, wie man diesen Json in ein Java-Objekt parsiert, und wie man ihm sagt, dass eine Reihe in" Reihen "vom Row1-Typ oder von Row2 sein kann Art.
Fall ist wichtig. – Savior
Im JSON heißt das Attribut "Tickets" mit einem "s", und wie der Name schon sagt, ist es ein Array von Tickets und nicht nur ein einzelnes Ticket. Es ist auch unklar, was Row ist und wie Row1 und Row2 sind relevant. –
Ich schlage vor, Sie lesen einige Tutorials in Bezug auf die Verwendung von Gson.fromJson – Pooya