Gson入門程式


在進入學習Google Gson庫的細節之前,讓我們先來看看一個使用Gson的應用程式的實際應用。 在這個例子中,建立了一個Student類。 將建立一個帶有學生詳細資訊的JSON字串,並將其反序列化為學生物件,然後將其序列化為JSON字串。

範例

開啟Eclipse,建立一個Java應用程式專案。然後建立一個Java檔案:GsonFirstApp.java -

package com.yiibai;

import com.google.gson.Gson; 
import com.google.gson.GsonBuilder;  

public class GsonFirstApp { 
   public static void main(String[] args) { 
      String jsonString = "{\"name\":\"Maxsu\", \"age\":24}"; 

      GsonBuilder builder = new GsonBuilder(); 
      builder.setPrettyPrinting(); 

      Gson gson = builder.create(); 
      Student student = gson.fromJson(jsonString, Student.class); 
      System.out.println(student);    

      jsonString = gson.toJson(student); 
      System.out.println(jsonString);  
   } 
}  
class Student { 
   private String name; 
   private int age; 
   public Student(){} 

   public String getName() { 
      return name; 
   } 
   public void setName(String name) { 
      this.name = name; 
   } 
   public int getAge() { 
      return age; 
   } 
   public void setAge(int age) { 
      this.age = age; 
   } 
   public String toString() { 
      return "Student [ name: "+name+", age: "+ age+ " ]"; 
   }  
}

執行上面範例程式碼,得到以下結果 -

Student [ name: Maxsu, age: 24 ]
{
  "name": "Maxsu",
  "age": 24
}

要記住的步驟

以下是這裡要考慮的重要步驟。

第1步:使用GsonBuilder建立Gson物件
建立一個Gson物件。 它是一個可重用的物件。

GsonBuilder builder = new GsonBuilder(); 
builder.setPrettyPrinting(); 
Gson gson = builder.create();

第2步: 將JSON反序列化為物件
使用fromJson()方法從JSON獲取物件。 傳遞Json字串/Json字串的源和物件型別作為引數。

//Object to JSON Conversion 
Student student = gson.fromJson(jsonString, Student.class);

第3步: 將物件序列化為JSON
使用toJson()方法獲取物件的JSON字串表示形式。

//Object to JSON Conversion   
jsonString = gson.toJson(student);