Gson - Liaison de données
L'API de liaison de données est utilisée pour convertir JSON vers et depuis POJO (Plain Old Java Object) à l'aide d'un accesseur de propriété ou à l'aide d'annotations. Il est de deux types.
Primitives Data Binding - Convertit JSON vers et depuis des objets Java Maps, Lists, Strings, Numbers, Booleans et NULL.
Objects Data Binding - Convertit JSON vers et depuis n'importe quel type JAVA.
Gson lit / écrit JSON pour les deux types de liaisons de données. La liaison de données est analogue à l'analyseur JAXB pour XML.
Liaison de données primitives
La liaison de données primitives fait référence au mappage de JSON aux types de données JAVA Core et aux collections intégrées. Gson fournit divers adaptateurs intégrés qui peuvent être utilisés pour sérialiser / désérialiser les types de données primitifs.
Exemple
Voyons la liaison de données primitive en action. Ici, nous allons mapper les types de base JAVA directement vers JSON et vice versa.
Créez un fichier de classe Java nommé GsonTester dans C:\>Gson_WORKSPACE.
File − GsonTester.java
import java.util.Arrays;
import com.google.gson.Gson;
public class GsonTester {
public static void main(String args[]) {
Gson gson = new Gson();
String name = "Mahesh Kumar";
long rollNo = 1;
boolean verified = false;
int[] marks = {100,90,85};
//Serialization
System.out.println("{");
System.out.println("name: " + gson.toJson(name) +",");
System.out.println("rollNo: " + gson.toJson(rollNo) +",");
System.out.println("verified: " + gson.toJson(verified) +",");
System.out.println("marks:" + gson.toJson(marks));
System.out.println("}");
//De-serialization
name = gson.fromJson("\"Mahesh Kumar\"", String.class);
rollNo = gson.fromJson("1", Long.class);
verified = gson.fromJson("false", Boolean.class);
marks = gson.fromJson("[100,90,85]", int[].class);
System.out.println("name: " + name);
System.out.println("rollNo: " + rollNo);
System.out.println("verified: " +verified);
System.out.println("marks:" + Arrays.toString(marks));
}
}
Vérifier le résultat
Compilez les classes en utilisant javac compilateur comme suit -
C:\GSON_WORKSPACE>javac GsonTester.java
Maintenant, exécutez le GsonTester pour voir le résultat -
C:\GSON_WORKSPACE>java GsonTester
Vérifiez la sortie.
{
name: "Mahesh Kumar",
rollNo: 1,
verified: false,
marks:[100,90,85]
}
name: Mahesh Kumar
rollNo: 1
verified: false
marks:[100, 90, 85]