Gson - Đẳng cấp

Gson là lớp diễn viên chính của thư viện Google Gson. Nó cung cấp các chức năng để chuyển đổi các đối tượng Java thành các cấu trúc JSON phù hợp và ngược lại. Gson lần đầu tiên được xây dựng bằng cách sử dụng GsonBuilder và sau đó, các phương thức toJson (Object) hoặc fromJson (String, Class) được sử dụng để đọc / ghi các cấu trúc JSON.

Khai báo lớp học

Sau đây là khai báo cho com.google.gson.Gson lớp học -

public final class Gson 
   extends Object

Người xây dựng

Sr.No Cấu tạo & Mô tả
1

Gson()

Xây dựng một đối tượng Gson với cấu hình mặc định.

Phương pháp lớp học

Sr.No Phương pháp & Mô tả
1

<T> T fromJson(JsonElement json, Class<T> classOfT)

Phương thức này giải mã Json đọc từ cây phân tích được chỉ định thành một đối tượng của kiểu được chỉ định.

2

<T> T fromJson(JsonElement json, Type typeOfT)

Phương thức này giải mã Json đọc từ cây phân tích được chỉ định thành một đối tượng của kiểu được chỉ định.

3

<T> T fromJson(JsonReader reader, Type typeOfT)

Đọc giá trị JSON tiếp theo từ trình đọc và chuyển đổi nó thành một đối tượng kiểu typeOfT.

4

<T> T fromJson(Reader json, Class<T> classOfT)

Phương thức này giải mã Json đọc từ bộ đọc được chỉ định thành một đối tượng của lớp được chỉ định.

5

<T> T fromJson(Reader json, Type typeOfT)

Phương pháp này giải mã Json đọc từ trình đọc được chỉ định thành một đối tượng của kiểu được chỉ định.

6

<T> T fromJson(String json, Class<T> classOfT)

Phương thức này giải mã Json được chỉ định thành một đối tượng của lớp được chỉ định.

7

<T> T fromJson(String json, Type typeOfT)

Phương thức này giải mã Json được chỉ định thành một đối tượng của kiểu được chỉ định.

số 8

<T> TypeAdapter<T> getAdapter(Class<T> type)

Trả về bộ điều hợp loại cho loại.

9

<T> TypeAdapter<T> getAdapter(TypeToken<T> type)

Trả về bộ điều hợp loại cho loại.

10

<T> TypeAdapter<T> getDelegateAdapter(TypeAdapterFactory skipPast, TypeToken<T> type)

Phương pháp này được sử dụng để lấy bộ điều hợp loại thay thế cho loại được chỉ định.

11

String toJson(JsonElement jsonElement)

Chuyển đổi một cây JsonElements thành biểu diễn JSON tương đương của nó.

12

void toJson(JsonElement jsonElement, Appendable writer)

Viết ra JSON tương đương cho một cây JsonElements.

13

void toJson(JsonElement jsonElement, JsonWriter writer)

Viết JSON cho jsonElement cho người viết.

14

String toJson(Object src)

Phương thức này tuần tự hóa đối tượng được chỉ định thành biểu diễn Json tương đương của nó.

15

void toJson(Object src, Appendable writer)

Phương thức này tuần tự hóa đối tượng được chỉ định thành biểu diễn Json tương đương của nó.

16

String toJson(Object src, Type typeOfSrc)

Phương thức này tuần tự hóa đối tượng được chỉ định, bao gồm cả đối tượng có kiểu chung, thành biểu diễn Json tương đương của nó.

17

void toJson(Object src, Type typeOfSrc, Appendable writer)

Phương thức này tuần tự hóa đối tượng được chỉ định, bao gồm cả đối tượng có kiểu chung, thành biểu diễn Json tương đương của nó.

18

void toJson(Object src, Type typeOfSrc, JsonWriter writer)

Viết biểu diễn JSON của src kiểu typeOfSrc cho người viết.

19

JsonElement toJsonTree(Object src)

Phương thức này tuần tự hóa đối tượng được chỉ định thành biểu diễn tương đương của nó dưới dạng cây JsonElements.

20

JsonElement toJsonTree(Object src, Type typeOfSrc)

Phương thức này tuần tự hóa đối tượng được chỉ định, bao gồm cả những đối tượng có kiểu chung, thành biểu diễn tương đương của nó dưới dạng một cây JsonElements.

21

String toString()

Các phương thức kế thừa

Lớp này kế thừa các phương thức từ lớp sau:

  • java.lang.Object

Thí dụ

Tạo chương trình Java sau bằng bất kỳ trình soạn thảo nào bạn chọn và lưu nó tại C: /> GSON_WORKSPACE

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

Xác minh kết quả

Biên dịch các lớp bằng cách sử dụng javac trình biên dịch như sau -

C:\GSON_WORKSPACE>javac GsonTester.java

Bây giờ hãy chạy GsonTester để xem kết quả -

C:\GSON_WORKSPACE>java GsonTester

Xác minh đầu ra

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