Учебники

Gson – привязка данных

API привязки данных используется для преобразования JSON в POJO (простой старый объект Java) и обратно с использованием метода доступа к свойствам или аннотаций. Это двух типов.

  • Примитивы привязки данных – преобразует JSON в и из Java-карт, списков, строк, чисел, логических и NULL-объектов.

  • Связывание данных объектов – преобразует JSON в любой тип JAVA.

Примитивы привязки данных – преобразует JSON в и из Java-карт, списков, строк, чисел, логических и NULL-объектов.

Связывание данных объектов – преобразует JSON в любой тип JAVA.

Gson читает / пишет JSON для обоих типов привязок данных. Привязка данных аналогична анализатору JAXB для XML.

Примитивы привязки данных

Привязка данных примитивов относится к отображению JSON в типы данных JAVA Core и встроенные коллекции. Gson предоставляет различные встроенные адаптеры, которые можно использовать для сериализации / десериализации примитивных типов данных.

пример

Давайте посмотрим на примитивную привязку данных в действии. Здесь мы отобразим основные типы JAVA непосредственно в JSON и наоборот.

Создайте файл класса Java с именем GsonTester в C: \> Gson_WORKSPACE .

Файл – 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)); 
   } 
}

Проверьте результат

Скомпилируйте классы, используя компилятор javac следующим образом:

C:\GSON_WORKSPACE>javac GsonTester.java

Теперь запустите GsonTester, чтобы увидеть результат –

C:\GSON_WORKSPACE>java GsonTester

Проверьте вывод.