Gson - Primeiro Aplicativo
Antes de entrar nos detalhes da biblioteca Google Gson, vamos ver um aplicativo em ação. Neste exemplo, criamos umStudentclasse. Vamos criar uma string JSON com detalhes do aluno e desserializá-la parastudent objeto e serializá-lo em uma string JSON.
Exemplo
Crie um arquivo de classe Java denominado GsonTester em 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
}
Passos para lembrar
A seguir estão as etapas importantes a serem consideradas aqui.
Etapa 1 - Criar objeto Gson usando GsonBuilder
Crie um objeto Gson. É um objeto reutilizável.
GsonBuilder builder = new GsonBuilder();
builder.setPrettyPrinting();
Gson gson = builder.create();
Etapa 2 - desserializar JSON para objeto
Use o método fromJson () para obter o objeto do JSON. Passe a string Json / fonte da string Json e o tipo de objeto como parâmetro.
//Object to JSON Conversion
Student student = gson.fromJson(jsonString, Student.class);
Etapa 3 - serializar objeto para JSON
Use o método toJson () para obter a representação da string JSON de um objeto.
//Object to JSON Conversion
jsonString = gson.toJson(student);