Gson - Class

Gson è la principale classe di attori della libreria Google Gson. Fornisce funzionalità per convertire oggetti Java in costrutti JSON corrispondenti e viceversa. Gson viene prima costruito utilizzando GsonBuilder, quindi i metodi toJson (Object) o fromJson (String, Class) vengono utilizzati per leggere / scrivere costrutti JSON.

Dichiarazione di classe

Di seguito è riportata la dichiarazione per com.google.gson.Gson classe -

public final class Gson 
   extends Object

Costruttori

Suor n Costruttore e descrizione
1

Gson()

Costruisce un oggetto Gson con la configurazione predefinita.

Metodi di classe

Suor n Metodo e descrizione
1

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

Questo metodo deserializza la lettura Json dall'albero di analisi specificato in un oggetto del tipo specificato.

2

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

Questo metodo deserializza la lettura Json dall'albero di analisi specificato in un oggetto del tipo specificato.

3

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

Legge il valore JSON successivo dal lettore e lo converte in un oggetto di tipo typeOfT.

4

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

Questo metodo deserializza la lettura Json dal lettore specificato in un oggetto della classe specificata.

5

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

Questo metodo deserializza la lettura Json dal lettore specificato in un oggetto del tipo specificato.

6

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

Questo metodo deserializza il Json specificato in un oggetto della classe specificata.

7

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

Questo metodo deserializza il Json specificato in un oggetto del tipo specificato.

8

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

Restituisce l'adattatore di tipo per il tipo.

9

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

Restituisce l'adattatore di tipo per il tipo.

10

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

Questo metodo viene utilizzato per ottenere un adattatore di tipo alternativo per il tipo specificato.

11

String toJson(JsonElement jsonElement)

Converte un albero di JsonElements nella sua rappresentazione JSON equivalente.

12

void toJson(JsonElement jsonElement, Appendable writer)

Scrive il JSON equivalente per un albero di JsonElements.

13

void toJson(JsonElement jsonElement, JsonWriter writer)

Scrive il JSON per jsonElement nel writer.

14

String toJson(Object src)

Questo metodo serializza l'oggetto specificato nella sua rappresentazione Json equivalente.

15

void toJson(Object src, Appendable writer)

Questo metodo serializza l'oggetto specificato nella sua rappresentazione Json equivalente.

16

String toJson(Object src, Type typeOfSrc)

Questo metodo serializza l'oggetto specificato, inclusi quelli di tipi generici, nella sua rappresentazione Json equivalente.

17

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

Questo metodo serializza l'oggetto specificato, inclusi quelli di tipi generici, nella sua rappresentazione Json equivalente.

18

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

Scrive la rappresentazione JSON di src di tipo typeOfSrc nel writer.

19

JsonElement toJsonTree(Object src)

Questo metodo serializza l'oggetto specificato nella sua rappresentazione equivalente come un albero di JsonElements.

20

JsonElement toJsonTree(Object src, Type typeOfSrc)

Questo metodo serializza l'oggetto specificato, inclusi quelli di tipi generici, nella sua rappresentazione equivalente come un albero di JsonElements.

21

String toString()

Metodi ereditati

Questa classe eredita i metodi dalla classe seguente:

  • java.lang.Object

Esempio

Crea il seguente programma Java utilizzando un editor di tua scelta e salvalo, ad esempio, in 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+ " ]"; 
   }  
}

Verifica il risultato

Compila le classi usando javac compilatore come segue -

C:\GSON_WORKSPACE>javac GsonTester.java

Ora esegui GsonTester per vedere il risultato -

C:\GSON_WORKSPACE>java GsonTester

Verifica l'output

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