一、GSON介紹
1》介紹:GSON最早由Google提出的開源的項目,主頁在github上,解析json
二、GSON生成JSON數據
1》加入依賴,創建包和類
2》創建Gson對象
Man wxe = new Man() ;
wxe.setName("xzx“);
Gson gson = new Gson() ;
gson.toJson(wxe) ;
3》如果真正轉換的數據格式不一致,則可以使用@SerializedName(”NAME“)
裝換後的name屬性則變爲了大寫的NAME
4》GsonBuilder gsonBuilder = new GsonBuilder() ;
gsonBuilder.setPrettyPrintint() ;
Gson gson = gsonBuilder.create();
這將json格式美化了,將一行的json打印成多行
5》setFieldNamingStrategy()定製自己的策略
private transient String ignore ; //transient指忽略該屬性
二、GSON解析
1》創建對象並掉用
File file = new File (文件路徑) ;
String content = FileUtils.readFileToString(file);
Gson gson = new Gson() ;
Man wxe = gson.fromJson(content , Man.class) ;
三、GSON解析帶日期裝換
1》將birthday改成Date類型 private Date birthday ;
2》日期模板: Gson gson = new GsonBuilder().setDateFormat(" yyyy-MM-dd ").create();
四、集合類解析
1》將數組類型轉爲集合類:private String[ ] major; 改成:private List<String> major ;
2》其餘和GSON解析相同
五、JSON和GSON區分
JSON是Android SDK官方的庫,在開發移動端程序的時候用JSONObject 進行數據轉換和生成
GSON適用於服務端開發,做json的數據處理(比JSONG功能更強大)
六、JSON庫的總結
功能:映射Java Object 與json格式數據
幾種特點:
1。通過Annotation 註解來聲明
2。支持自定義屬性名稱
3。支持包含或排除屬性
4。支持自定義接口自己完成解析/生成過程