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
}