如何使用gson库将以下json响应转换为Java对象。 {
"status":"Success",
"result":{
"VenuereviewDet":[
{
"user_profile_imgPath":"",
"reviewDet_reviewtxt":"New review",
"reviewDet_reviewsts":"0",
"reviewDet_name":"jP",
"reviewDet_reviewdatetime":"Wednesday 23rd of July 2014 07"
},
{
"user_profile_imgPath":"",
"reviewDet_reviewtxt":"1kjdkgnkdfmgm",
"reviewDet_reviewsts":"0",
"reviewDet_name":"sreekanth",
"reviewDet_reviewdatetime":null
}
],
"venueimages":[
{
"venueimages_thumbimg":"http:\/\/localhost\/app\/images\/videothumb\/JamonJamon_1.jpg",
"venueimages_image":"http:\/\/localhost\/app\/images\/videothumb\/JamonJamon_1.jpg",
"venueimages_id":"51",
"venuedet_id":"10"
},
{
"venueimages_thumbimg":"http:\/\/localhost\/app\/images\/videothumb\/http:\/\/localhost\/app\/images\/videothumb\/JamonJamon_2.jpg",
"venueimages_image":"http:\/\/localhost\/app\/images\/videothumb\/JamonJamon_2.jpg",
"venueimages_id":"52",
"venuedet_id":"10"
}
]
}
}
如何使用gson库将此JSON响应转换为Java对象
答案 0 :(得分:2)
你需要先完成以下课程
class VenuereviewDet
{
String user_profile_imgPath;
String reviewDet_reviewtxt;
String reviewDet_reviewsts;
String reviewDet_name;
String reviewDet_reviewdatetime;
}
class Venueimages
{
String venueimages_thumbimg;
String venueimages_image;
String venueimages_id;
String venuedet_id;
}
class Data
{
ArrayList<VenuereviewDet> VenuereviewDet;
ArrayList<Venueimages> venueimages;
}
class FinalRespone
{
String status;
Data result;
}
然后
FinalRespone response=gson.fromJson(jsonResponse,FinalRespone.class);
现在让我解释一下。
在您的回复中,有一个名为result的对象。所以你上课时必须有一个类的对象,它可以处理VenuereviewDet和Venueimages的数组。因为这些密钥是以数组形式出现的。
所以FinalResponse是一个里面有状态和数据的类。和Data类有两个成员数据,它们只是某些类的ArrayList的对象。
对于GSON,唯一的问题是创建了很多模型类。你在课堂结构中打破你的反应的那一刻。对你来说很容易。
如果您仍然面临GSON的问题,请告诉我
答案 1 :(得分:0)
使用Google的gson,您可以使用以下代码行将json字符串转换为java对象。
Gson gson = new Gson();
List listObject = gson.fromJson(jsonResponse,ArrayList.class);
或
YourObject[] objectArray = gson.fromJson(jsonResponse,YourObject[].class);
因为我认为你可能需要“结果”:“成功”你可以拥有这个结构
public class MyObject{
private String result
//where you store your VenuereviewDet array and venuimages array
private ArrayList result;
//getters setters
}
然后转换为java对象
MyObject objectArray = gson.fromJson(jsonResponse,MyObject.class);