解析Json框架:Gson實體類對映
阿新 • • 發佈:2019-01-04
說明:
Android介面返回的資料都是json的String物件,Gson封裝了對映功能,網路請求的Volley框架請求也是用到了Gson的對映原理:
實體類:
先建一個實體類來對映json String:
package com.baofoo.mobile.bean; import java.util.ArrayList; /** * 網路分類資訊封裝 * 欄位名必須和伺服器返回的欄位名一致,方便json解析 * * @author ZST */ public class NewsData { // 根據json資料實際解析 // 第一層資料 public int retcade; public ArrayList<NewsMenuData> data; // 側邊連資料物件 // 第二層資料-用內部類接收data的map資料 public class NewsMenuData { public String id;// 有些id比較長,超出int範圍,所以使用String接收 public String title; public int type; public String url; public ArrayList<NewsTabData> children; @Override public String toString() { return "NewsMenuData [title=" + title + ", children=" + children + "]"; } } // 新聞頁面下11個子頁籤的資料物件 // 第三層資料-接收children的map資料 public class NewsTabData { public String id; public String title; public int type; public String url; @Override public String toString() { return "NewsTabData [title=" + title + "]"; } } //重寫一下toString方法,方便列印NewsData這個物件中的變數 @Override public String toString() { return "NewsData [data=" + data + "]"; } }
對映:
返回的結果直接對映即可:
NewsData data = new Gson().fromJson(result, NewsData.class);
呼叫:
LogUtils.d("測試:" + data.retcade);