Gson - Classe
Gson é a classe de ator principal da biblioteca Gson do Google. Ele fornece funcionalidades para converter objetos Java em construções JSON correspondentes e vice-versa. Gson é construído primeiro usando GsonBuilder e, em seguida, métodos toJson (Object) ou fromJson (String, Class) são usados para ler / gravar construções JSON.
Declaração de Classe
A seguir está a declaração para com.google.gson.Gson classe -
public final class Gson
extends Object
Construtores
Sr. Não | Construtor e descrição |
---|---|
1 | Gson() Constrói um objeto Gson com configuração padrão. |
Métodos de aula
Sr. Não | Método e Descrição |
---|---|
1 | <T> T fromJson(JsonElement json, Class<T> classOfT) Este método desserializa a leitura Json da árvore de análise especificada em um objeto do tipo especificado. |
2 | <T> T fromJson(JsonElement json, Type typeOfT) Este método desserializa a leitura Json da árvore de análise especificada em um objeto do tipo especificado. |
3 | <T> T fromJson(JsonReader reader, Type typeOfT) Lê o próximo valor JSON do leitor e o converte em um objeto do tipo typeOfT. |
4 | <T> T fromJson(Reader json, Class<T> classOfT) Este método desserializa a leitura Json do leitor especificado em um objeto da classe especificada. |
5 | <T> T fromJson(Reader json, Type typeOfT) Este método desserializa o Json lido do leitor especificado em um objeto do tipo especificado. |
6 | <T> T fromJson(String json, Class<T> classOfT) Este método desserializa o Json especificado em um objeto da classe especificada. |
7 | <T> T fromJson(String json, Type typeOfT) Este método desserializa o Json especificado em um objeto do tipo especificado. |
8 | <T> TypeAdapter<T> getAdapter(Class<T> type) Retorna o adaptador de tipo para tipo. |
9 | <T> TypeAdapter<T> getAdapter(TypeToken<T> type) Retorna o adaptador de tipo para tipo. |
10 | <T> TypeAdapter<T> getDelegateAdapter(TypeAdapterFactory skipPast, TypeToken<T> type) Este método é usado para obter um adaptador de tipo alternativo para o tipo especificado. |
11 | String toJson(JsonElement jsonElement) Converte uma árvore de JsonElements em sua representação JSON equivalente. |
12 | void toJson(JsonElement jsonElement, Appendable writer) Grava o JSON equivalente para uma árvore de JsonElements. |
13 | void toJson(JsonElement jsonElement, JsonWriter writer) Grava o JSON para jsonElement para o escritor. |
14 | String toJson(Object src) Este método serializa o objeto especificado em sua representação Json equivalente. |
15 | void toJson(Object src, Appendable writer) Este método serializa o objeto especificado em sua representação Json equivalente. |
16 | String toJson(Object src, Type typeOfSrc) Este método serializa o objeto especificado, incluindo aqueles de tipos genéricos, em sua representação Json equivalente. |
17 | void toJson(Object src, Type typeOfSrc, Appendable writer) Este método serializa o objeto especificado, incluindo aqueles de tipos genéricos, em sua representação Json equivalente. |
18 | void toJson(Object src, Type typeOfSrc, JsonWriter writer) Grava a representação JSON de src do tipo typeOfSrc para o gravador. |
19 | JsonElement toJsonTree(Object src) Este método serializa o objeto especificado em sua representação equivalente como uma árvore de JsonElements. |
20 | JsonElement toJsonTree(Object src, Type typeOfSrc) Este método serializa o objeto especificado, incluindo aqueles de tipos genéricos, em sua representação equivalente como uma árvore de JsonElements. |
21 | String toString() |
Métodos herdados
Esta classe herda métodos da seguinte classe -
- java.lang.Object
Exemplo
Crie o seguinte programa Java usando qualquer editor de sua escolha e salve-o em, digamos, 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+ " ]";
}
}
Verifique o resultado
Compile as classes usando javac compilador da seguinte forma -
C:\GSON_WORKSPACE>javac GsonTester.java
Agora execute o GsonTester para ver o resultado -
C:\GSON_WORKSPACE>java GsonTester
Verifique a saída
Student [ name: Mahesh, age: 21 ]
{
"name" : "Mahesh",
"age" : 21
}