Android中Gson解析json数据使用@Serialize

2017-02-22  本文已影响0人  yi次元

笔记

在Android中使用Gson来解析json数据十分方便,可以直接将json数据解析成java对象或者集合。
在解析某天气网站返回的json数据时,由于JSON中的一些字段直接使用Java字段来命名可能不合适,这里可以使用@SerializedName注解的方式来让JSON字段和Java字段之间建立映射关系。
具体使用方法,下面以一段代码为例:
“basic”:{
          "city":"上海",
          "id":"CN0000001",
          "update":"2016-08-08 21:58"
          }
不使用@SerializedName注解,正常使用basic类来解析的话:
public class Basic {
      public String city;
      public String id;
      public String update;
}  
Basic类要这样写才能直接使用Gson直接解析出来,但是这样对属性命名显然不太友好,那我们要怎么做呢?Gson提供注解的方法来解决这个问题@SerializedName,使用方法如下:
public class Basic {
      @SerializedName("city")
       public String cityName;
      @SerializedName("id")
       public String weatherId;
      @SerializedName("update")
       public String updateTime;
}
这样再使用Gson解析的时候就会将city对应的值赋值到cityName属性上,同样的如果我们要将Basic生成json字符串使用Gson生成的时候也会将cityName的名字生成city。这样就解决了java对象里属性名跟json里字段名不匹配的情况了。
上一篇下一篇

猜你喜欢

热点阅读