如何从Json响应中获取嵌套属性和图像

时间:2012-03-06 10:21:53

标签: java json gson

我从服务器收到此表单的回复

{"error":null,"id":1,"result":
{"admin":false,
"firstname":"Jason",
"id":346,"idHotel":109,
"idVendor":null,
"lastname":"Butcher",
"sessionkey":"3c8a17ae47a6d131b1a14b44a1d8f9a9",
"urlAvatar":"avatar_316_mjm.jpg",
"urlThumb":"thumb_316_mjm.jpg"}
}

想要获得各种单打属性,

例如

Boolean error=..;
String admin=....;
String idHotel=...;

以及图像

1 个答案:

答案 0 :(得分:1)

你应该创建一个这样的包装类:

public class Response {
    public boolean error;
    public int id;
    public Result result;
}

public class Result {
    ...
}

然后很简单,你可以通过gson将json反序列化为你的类:

Response response = new Response();
Gson gson = new Gson();
response = gson.fromJson(response, Response.class);

你可以做很多其他漂亮的事情:https://sites.google.com/site/gson/gson-user-guide

哦忘了一件重要的事! 记得要更改Gson库上的命名空间,我遇到问题让它在htc电话上运行。您可以使用jar jar链接执行此操作:http://code.google.com/p/jarjar/downloads/list

docs:http://code.google.com/p/jarjar/wiki/CommandLineDocs