Gson - คลาส

Gson เป็นนักแสดงหลักของห้องสมุด Google Gson มีฟังก์ชันในการแปลงอ็อบเจ็กต์ Java เพื่อจับคู่โครงสร้าง JSON และในทางกลับกัน Gson ถูกสร้างขึ้นครั้งแรกโดยใช้ GsonBuilder จากนั้นจึงใช้วิธี toJson (Object) หรือ fromJson (String, Class) เพื่ออ่าน / เขียนโครงสร้าง JSON

การประกาศคลาส

ต่อไปนี้เป็นคำประกาศสำหรับ com.google.gson.Gson ชั้นเรียน -

public final class Gson 
   extends Object

ตัวสร้าง

ซีเนียร์ No ตัวสร้างและคำอธิบาย
1

Gson()

สร้างวัตถุ Gson ด้วยการกำหนดค่าเริ่มต้น

วิธีการเรียน

ซีเนียร์ No วิธีการและคำอธิบาย
1

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

เมธอดนี้ deserializes Json ที่อ่านจากแผนผังการแยกวิเคราะห์ที่ระบุลงในอ็อบเจ็กต์ประเภทที่ระบุ

2

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

เมธอดนี้ deserializes Json ที่อ่านจากแผนผังการแยกวิเคราะห์ที่ระบุลงในอ็อบเจ็กต์ประเภทที่ระบุ

3

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

อ่านค่า JSON ถัดไปจากผู้อ่านและแปลงเป็นอ็อบเจ็กต์ประเภท typeOfT

4

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

วิธีนี้ยกเลิกการกำหนดค่า Json ที่อ่านจากเครื่องอ่านที่ระบุลงในอ็อบเจ็กต์ของคลาสที่ระบุ

5

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

วิธีนี้ยกเลิกการกำหนดค่า Json ที่อ่านจากเครื่องอ่านที่ระบุลงในอ็อบเจ็กต์ของชนิดที่ระบุ

6

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

เมธอดนี้ deserializes Json ที่ระบุลงในอ็อบเจ็กต์ของคลาสที่ระบุ

7

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

เมธอดนี้ deserialize Json ที่ระบุลงในอ็อบเจ็กต์ของชนิดที่ระบุ

8

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

ส่งคืนอะแด็ปเตอร์ชนิดสำหรับชนิด

9

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

ส่งคืนอะแด็ปเตอร์ชนิดสำหรับชนิด

10

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

วิธีนี้ใช้เพื่อรับอะแด็ปเตอร์ชนิดสำรองสำหรับชนิดที่ระบุ

11

String toJson(JsonElement jsonElement)

แปลงโครงสร้างของ JsonElements เป็นการแทนค่า JSON ที่เทียบเท่า

12

void toJson(JsonElement jsonElement, Appendable writer)

เขียน JSON ที่เทียบเท่าสำหรับโครงสร้างของ JsonElements

13

void toJson(JsonElement jsonElement, JsonWriter writer)

เขียน JSON สำหรับ jsonElement ให้กับนักเขียน

14

String toJson(Object src)

วิธีนี้ทำให้วัตถุที่ระบุเป็นอนุกรมเป็นตัวแทน Json ที่เทียบเท่า

15

void toJson(Object src, Appendable writer)

วิธีนี้ทำให้วัตถุที่ระบุเป็นอนุกรมเป็นตัวแทน Json ที่เทียบเท่า

16

String toJson(Object src, Type typeOfSrc)

วิธีนี้ทำให้วัตถุที่ระบุเป็นอนุกรมรวมทั้งประเภททั่วไปเป็นตัวแทน Json ที่เทียบเท่า

17

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

วิธีนี้ทำให้วัตถุที่ระบุเป็นอนุกรมรวมทั้งประเภททั่วไปเป็นตัวแทน Json ที่เทียบเท่า

18

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

เขียนการแทนค่า JSON ของ src ประเภท typeOfSrc ไปยัง writer

19

JsonElement toJsonTree(Object src)

วิธีนี้ทำให้วัตถุที่ระบุเป็นอนุกรมในการแทนค่าที่เทียบเท่ากันเป็นโครงสร้างของ JsonElements

20

JsonElement toJsonTree(Object src, Type typeOfSrc)

วิธีนี้ทำให้วัตถุที่ระบุเป็นอนุกรมรวมถึงประเภททั่วไปในการแทนค่าเทียบเท่ากับโครงสร้างของ JsonElements

21

String toString()

วิธีการสืบทอด

คลาสนี้สืบทอดวิธีการจากคลาสต่อไปนี้ -

  • java.lang.Object

ตัวอย่าง

สร้างโปรแกรม Java ต่อไปนี้โดยใช้โปรแกรมแก้ไขที่คุณเลือกและบันทึกไว้ที่ 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+ " ]"; 
   }  
}

ตรวจสอบผลลัพธ์

รวบรวมคลาสโดยใช้ javac คอมไพเลอร์ดังนี้ -

C:\GSON_WORKSPACE>javac GsonTester.java

ตอนนี้เรียกใช้ GsonTester เพื่อดูผลลัพธ์ -

C:\GSON_WORKSPACE>java GsonTester

ตรวจสอบผลลัพธ์

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