Gson第一个应用


在进入Google Gson库的详细信息之前,让我们看一下应用程序的运行情况。在这个例子中,我们创建了一个 Student 类。我们将创建一个包含学生详细信息的JSON字符串,并将其反序列化为 student 对象,然后将其序列化为JSON字符串。

在C:> GSON_WORKSPACE中创建名为GsonTester的Java类文件。

文件 - GsonTester.java

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

public class GsonTester {
   public static void main(String[] args) {
      String jsonString = "{\"name\":\"Mahesh\", \"age\":21}";

      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+ " ]";
   }  
}

验证结果

使用 javac 编译器编译类如下 -

C:\GSON_WORKSPACE>javac GsonTester.java

现在运行GsonTester查看结果 -

C:\GSON_WORKSPACE>java GsonTester

验证输出。

Student [ name: Mahesh, age: 21 ]
{
   "name" : "Mahesh",
   "age" : 21
}

要记住的步骤

以下是需要考虑的重要步骤。

第1步:使用GsonBuilder创建Gson对象

创建一个Gson对象。它是一个可重用的对象。

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

第2步:将JSON反序列化为Object

使用fromJson()方法从JSON获取Object。将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);