Android中Gson解析json數(shù)據(jù)使用@SerializedName注解

筆記

在Android中使用Gson來解析json數(shù)據(jù)十分方便,可以直接將json數(shù)據(jù)解析成java對象或者集合。
在解析某天氣網(wǎng)站返回的json數(shù)據(jù)時,由于JSON中的一些字段直接使用Java字段來命名可能不合適,這里可以使用@SerializedName注解的方式來讓JSON字段和Java字段之間建立映射關(guān)系。
具體使用方法,下面以一段代碼為例:
“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對應(yīng)的值賦值到cityName屬性上,同樣的如果我們要將Basic生成json字符串使用Gson生成的時候也會將cityName的名字生成city。這樣就解決了java對象里屬性名跟json里字段名不匹配的情況了。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,024評論 25 708
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,868評論 18 139
  • 1.概述2.Gson的目標(biāo)3.Gson的性能和擴展性4.Gson的使用者5.如何使用Gson 通過Maven來使用...
    人失格閱讀 14,318評論 2 18
  • 《瞬時花開》目錄上一章:瞬時花開(56) “咦,筱婷,你有這張光碟!能不能借給我聽聽?”下午放學(xué)的時候,思嘉從筱婷...
    星月花木閱讀 130評論 0 0