gson
有数据头的复杂数据该如何解析呢?
简单的说完了,铺垫也铺完了,来看一看复杂的吧:
{
"code": 200,
"msg": "OK",
"muser": [
{
"name": "zhangsan",
"age": "10",
"phone": "11111",
"email": "11111@11.com"
},
{
"name": "lisi",
"age": "20",
"phone": "22222",
"email": "22222@22.com"
},
...
]
}
这里就不再是纯数组数据了,还有两个凑数的不知道干嘛用的字段,这里也有数据头,之前用的是笨方法,现在来真正见识一下GSON的威力吧。
第一步根据 JSON 建立 Bean ,注意这里的 Bean 是返回所有字段,因为 GSON 能直接解析成 List ,所以 Bean 是下面这样的,同样把占地方的 get/set 省略:
/**
* Created by xiarui on 2016/8/30.
* 返回所有结果的Bean
*/
public class ResultBean {
//注意变量名与字段名一致
private int code;
private String msg;
private List<UserBean> muser;
public class UserBean{
private String name ;
private String age;
private String phone;
private String email;
...
}
...
}
注意,这个 ResultBean 里面有一个 UserBean 。 它虽然跟上面第一第二招虽然内容一样,但是作用不一样,这是作为 JsonArray 解析后存入 List 中的对象。