我有一個服務返回的字符串,在這個JSON格式:轉換一個JSON字符串轉換成Java對象
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"
}
我需要解析它並轉換成Java對象。 我試圖創建這樣一個DOM:
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;
}
然後我嘗試用谷歌GSON解析它,這樣說:
TicketWrapper ticket = gson.fromJson(message, TicketWrapper.class)
,但如果我打印System.out.println(gson.toJson(ticket))
,它打印: {」桌面「:0,」用戶「:0}
我不知道如何將Json解析爲Java對象,以及如何告訴他一行到」行「可以是Row1類型或Row2類型。
案件很重要。 – Savior
在JSON中,該屬性被命名爲「Tickets」,帶有's',正如名稱所示,它是一系列票據,而不僅僅是一張票。還不清楚Row是什麼,以及Row1和Row2是相關的。 –
我建議你閱讀一些關於使用Gson.fromJson的教程 – Pooya