Programació

GSON: Guia ràpida per a principiants

30 d'octubre de 2021

Taula de continguts

Què és GSON?

Gson , també conegut com a Google Gson, és una biblioteca basada en Java útil per serialitzar i deserialitzar objectes Java. En altres termes, Gson s'utilitza per transformar objectes Java en JSON forma. També converteix qualsevol cadena JSON al seu objecte Java respectiu.

Gson permet als usuaris personalitzar objectes Java i admet àmpliament Java Generics. Utilitza dos mètodes senzills, toJson() per convertir l'objecte Java en una cadena JSON i fromJson() per convertir la cadena JSON en objecte Java. Un dels objectius importants de Gson és convertir-los Java objectes a la seva cadena JSON respectiva, que no es poden modificar.

Gson inclou serialitzador i deserialitzador. El serialitzador Gson us permet transformar la cadena JSON al seu objecte Java respectiu. Podeu serialitzar diversos objectes Java similars. D'altra banda, el deserialitzador Gson transforma l'objecte Java en la seva cadena JSON separada.

Característiques de Gson:

Aquestes són algunes de les característiques més desitjables de Gson.

  • Gson és una biblioteca de codi obert de Google, que és una biblioteca estandarditzada compatible amb genèrics Java.
  • Aquesta biblioteca de Google també admet objectes complexos amb jerarquies d'herència. També admet classes imbricades.
  • Durant la serialització i la deserialització d'objectes Java, Gson ajuda els usuaris a crear un serialitzador i un deserialitzador personalitzables. Permetrà als usuaris tenir el seu control sobre el procés. A més, podeu deserialitzar aquells objectes Java el codi dels quals no estigui disponible o accessible.
  • Una altra característica de Gson és que és altament personalitzable. Els usuaris poden decidir si necessiten imprimir una sortida complexa o una sortida llegible per l'home.
  • Gson requereix menys memòria i és molt ràpid i ràpid.
  • Només depèn del Java Development Kit (JDK) i no requereix cap altra biblioteca externa.

Com processar JSON?

Hi ha tres maneres diferents de processar JSON que ofereix la biblioteca Gson, Streaming API, Tree Model i Data Binding. Parlem de cada formulari de processament JSON.

API de streaming

En el mètode de l'API de streaming per processar JSON, tot el contingut JSON es llegeix i escriu com a esdeveniments discrets. Les dades JSON es llegeixen amb JsonReader i s'escriuen amb JsonWriter. JsonReader i JsonWriter tracten les dades JSON com un testimoni. Aquest testimoni s'anomena JsonToken. El mètode de l'API de streaming per processar JSON és el mètode més eficaç i ràpid que els altres dos. Realitza operacions de lectura i escriptura de manera ràpida i ràpida.

Model d'arbre

Un altre mètode de processament JSON és el model d'arbre. En el model d'arbre, el contingut JSON es representa com una estructura semblant a un arbre. Aquesta estructura en forma d'arbre de dades JSON conté nodes JsonObjects. El model d'arbre és el mètode més flexible per processar JSON. És el mateix que el de l'analitzador DOS de XML.

Vinculació de dades

L'enfocament d'enllaç de dades per processar JSON utilitza el descriptor de propietat. El descriptor de propietat transforma JSON a Objecte Java antic senzill (POJO) i viceversa. Hi ha adaptadors de tipus de dades en l'enfocament d'enllaç de dades, que realitza Jsonreads i Jsonwrites. Aquest mètode d'enllaç de dades és el mateix que el de l'analitzador JAXB de XML.

Configuració ambiental de Gson

Si el vostre sistema no té una configuració d'entorn Java local, primer heu de configurar-la. Configurar l'entorn Java al vostre sistema és molt senzill i manejable. Aquí teniu una guia completa sobre com configurar un entorn Java local. Seguiu seqüencialment els passos que s'indiquen a continuació per configurar correctament un entorn Java local.

  • En primer lloc, heu de descarregar JavaSE des del lloc web . Assegureu-vos de descarregar la versió JavaSE compatible amb el sistema operatiu del vostre ordinador.
  • Baixeu el fitxer JavaSE i seguiu les instruccions que es mostren durant la instal·lació. JavaSE s'instal·larà al vostre sistema.
  • Després d'això, heu configurat el camí correcte de les variables ambientals.

Passos per configurar la ruta per a Windows 2000/XP

Mou el fitxer JavaSE que has baixat del lloc web anterior al directori C/Program Files/java/jdk de la unitat local. A continuació, consulteu els passos següents per configurar el camí per a les variables ambientals.

  • Aneu a 'El meu ordinador' i feu-hi clic amb el botó dret. Notareu 'Propietats' i feu-hi clic.
  • Més tard, aneu a la pestanya 'Avançat' i feu clic al botó 'Variables ambientals'.
  • Comproveu el camí. Canvieu la ruta al directori jdk, on hem guardat el fitxer JavaSE descarregat. Si el camí actual és 'C:WINDOWSSYSTEM32', canvieu-lo a 'C:WINDOWSSYSTEM32;c:Program Filesjavajdkin'.

Passos per configurar la ruta per a Windows 95 / 98 / ME

Després de descarregar el fitxer JavaSE, moveu-lo al directori C/Program Files/java/jdk. Per configurar la ruta a Windows 95 / 98 / ME, seguiu el pas següent:

  • Aneu al fitxer 'C:autoexec.bat'. Més tard, afegiu 'SET PATH=%PATH%;C:Program Filesjavajdkin' al final de 'C:autoexec.bat'.

Passos per configurar la ruta per a sistemes Linux, Solaris, FreeBSD i UNIX

Per als sistemes Linux, Solaris, FreeBSD i UNIX, heu de configurar el PATH al lloc on estan instal·lats tots els binaris Java. Per exemple, utilitzeu bash your shell. Utilitzeu la següent línia de codi per configurar el camí.

‘.bashrc: export PATH=/path/to/java/java:$PATH’.

Com configurar un entorn Gson?

Un cop hàgiu establert el camí de Java, aquí teniu els passos restants per configurar l'entorn JSON del vostre sistema.

  • En primer lloc, heu de descarregar l'arxiu Gson. Assegureu-vos de baixar la darrera versió de l'arxiu Gson. Baixeu l'arxiu Gson o el fitxer jar de Gson des del gson-2.3.1.jar. Per als sistemes Microsoft Windows, Linux i macOS, el nom del fitxer d'arxiu JSON és 'gson-2.3.1.jar'. Després de descarregar el fitxer gson-2.3.1.jar, copieu-lo a la carpeta C:>gson.
Sistema operatiu Nom del fitxer d'arxiu
Microsoft Windowsgson-2.3.1.jar.
Mac OS Xgson-2.3.1.jar.
Linuxgson-2.3.1.jar.
  • El següent pas és establir el camí per a la variable d'entorn GSON_HOME. Heu de corregir la ruta de la variable d'entorn GSON_HOME al lloc on es troba el vostre fitxer gson-2.3.1.jar al sistema. Per a diferents sistemes operatius, la ruta de l'entorn GSON_HOME és diferent. La taula següent us guiarà per canviar la ruta actual del vostre sistema a la ruta GSON.
Sistema operatiu Resultat
Microsoft WindowsCanvieu la variable d'entorn de GSON_HOME a C:gson.
Mac OS XSeguiu l'ordre següent per canviar la variable ambiental a macOS.exportGSON_HOME = /usr/local/gson
LinuxSeguiu l'ordre següent per canviar la variable ambiental als sistemes Linux.exportGSON_HOME = /Library/gson
  • Després d'establir la ruta JSON per a la variable d'entorn GSON_HOME, heu d'establir el CLASSPATH de la variable d'entorn. Fixeu la variable d'entorn CLASSPATH al lloc on es troba el vostre fitxer jar Gson.
Sistemes operatius Resultat
Microsoft Windows% CLASSPATH%;% GSON_HOME% gson-2.3.1.jar;.;
Mac OS Xexportar CLASSPATH = $ CLASSPATH: $ GSON_HOME / gson-2.3.1.jar :.
Linuxexportar CLASSPATH = $ CLASSPATH: $ GSON_HOME / gson-2.3.1.jar :.

Exemple de Gson Java

Hem vist com configurar un entorn Java local i un entorn Gson al vostre Windows, Linux , i sistemes operatius macOS. Un cop hàgiu configurat tot el necessari per executar el codi Gson, ja esteu preparat per executar qualsevol aplicació. Podeu provar un exemple vosaltres mateixos al vostre sistema.

Per provar l'exemple de Gson a continuació, podeu utilitzar qualsevol dels editors de Java populars, com ara Bloc de notes , Netbeans , o Eclipsi . El Bloc de notes és un dels editors de text típics utilitzats per escriure el codi Java. Si teniu un sistema Windows, podeu utilitzar l'editor de text del Bloc de notes per escriure el codi Java. L'altra plataforma és Netbeans. És un Entorn de desenvolupament integrat (IDE) . Podeu descarregar Netbeans als vostres sistemes Windows, Linux, Solaris i macOS. Un altre editor de text per a Java és Eclipse. Servidors Eclipse com a editor de text per a diversos llenguatges de programació. Podeu descarregar Eclipse als sistemes Windows, Linux i macOS.

Abans de veure l'exemple de Gson, recordeu crear el fitxer Java amb el nom 'GsonEmployee', que és el nom de la classe Java. Més tard, assegureu-vos que el vostre fitxer Java 'GsonEmployee' estigui present a C:>GSON_WORKSPACE. Deseu el vostre fitxer en aquest directori amb l'extensió .java.

Exemple:

|_+_|

Sortida:

Seguiu els passos que s'indiquen a continuació per executar el codi Gson anterior.

  1. Completa el codi anterior amb la paraula clau 'javac'.
|_+_|
  1. Després de compilar, executeu el codi amb la paraula clau 'java'.
|_+_|
  1. El resultat del codi Gson anterior es mostrarà si no hi ha errors al codi.
|_+_|

Aquí teniu una guia senzilla sobre com crear, serialitzar i deserialitzar l'objecte Gson.

  • En primer lloc, heu de crear un objecte Gson reutilitzable mitjançant la funció GsonBuilder().
|_+_|
  • Després de crear un objecte Gson, heu de deserialitzar la cadena JSON a un objecte Java. Per a aquest propòsit, utilitzem la funció fromJson(). En aquesta funció, heu de passar dos paràmetres, la cadena JSON i el tipus d'objecte.
|_+_|
  • Més tard, heu de serialitzar un objecte Java a la cadena JSON mitjançant la funció toJson(). Aquesta funció només requereix un paràmetre, un objecte.
|_+_|

Gson - Serialització d'objectes

La serialització d'objectes Gson implica llegir l'objecte Java en un document JSON i després llegir el document JSON en un objecte Java. Feu-nos saber com es produeix la serialització d'objectes Gson amb un exemple. Prenguem el mateix exemple d'empleat, tal com s'ha comentat anteriorment. Vam mostrar l'identificador, el nom, l'edat i la posició de l'empleat. En aquest exemple, mostrarem el mateix resultat i veurem la serialització d'objectes Gson.

De la mateixa manera, heu de crear una classe anomenada GsonEmployee i col·locar aquest fitxer a C:>GSON_WORKSPACE. Recordeu desar el vostre nom de fitxer com a GsonEmployee.java.

Exemple

|_+_|

Sortida:

Per executar el codi anterior, heu de seguir els passos especificats anteriorment.

  • Per compilar el codi, utilitzeu la paraula clau 'javac'.
|_+_|
  • Un cop compilat, executeu el codi amb la paraula clau 'java'.
|_+_|
  • El resultat d'aquest codi serà el mateix que l'anterior, mostrant el nom, l'edat i la posició de l'empleat.
|_+_|

Classe Gson

Hem vist com serialitzar l'objecte Gson. En altres termes, hem llegit l'objecte Java a la seva cadena JSON equivalent i la cadena JSON al seu objecte Java respectiu. Ara, anirem cap a la classe Gson.

Gson és la classe principal i significativa de la biblioteca Gson de Google. La classe Gson és responsable de convertir objectes Java en cadena JSON i cadena JSON en objectes Java respectius. Per a la classe Gson, primer heu d'utilitzar la funció GsonBuilder() i després fer servir les funcions toJson() i fromJson() per llegir i escriure cadenes JSON. A continuació es mostra la sintaxi de declaració de classe per a com.google.gson.Gson.

Sintaxi:

|_+_|

Gson Constructor

Hi ha un constructor Gson per utilitzar al codi Java. Es defineix com, Gson(). El constructor Gson() crea l'objecte Gson. Com que no hi ha paràmetres passats a Gson(), es necessita la configuració per defecte.

Mètodes de classe Gson

Ara anirem cap als mètodes de classe Gson. A continuació es mostren alguns mètodes efectius de classe Gson amb la seva descripció.

    T fromJson(JsonElement json, Class classOfT):

El mètode de classe Gson anterior utilitza un arbre d'anàlisi particular per deserialitzar la lectura Json d'ell al tipus d'objecte específic.

    T fromJson (JsonElement json, TypeOfT):

Aquest mètode de classe Gson també s'utilitza amb el mateix propòsit que el mètode anterior. Utilitza la lectura Json de l'arbre d'anàlisi específic i la converteix en el seu tipus d'objecte equivalent.

    T fromJson (Reader json, TypeOfT):

El mètode de classe Gson anterior pren la lectura de Json d'un lector particular i el deserialitza al tipus d'objecte específic.

    T fromJson (lector JsonReader, tipus typeOfT):

Podeu utilitzar el mètode de classe Gson anterior per llegir la següent cadena o valor JSON d'un lector concret. Després de llegir, aquest mètode transforma el valor JSON en l'objecte typeOfT.

    T fromJson(Reader json, Class classOfT):

Aquest mètode de classe Gson pren la lectura JSON del lector específic i la deserialitza a l'objecte de classe especificat.

    TypeAdapter getDelegateAdapter (TypeAdapterFactory skipPast, TypeToken):

Quan necessiteu un adaptador de tipus alternatiu per a un tipus concret, podeu utilitzar el mètode de classe Gson anterior.

    TypeAdapter getAdapter (tipus de classe):

Aquest mètode de classe Gson s'utilitza per obtenir l'adaptador de tipus per al tipus específic.

    T fromJson(String json, Class classOfT):

Quan voleu deserialitzar qualsevol cadena JSON en un objecte de classe específic, podeu utilitzar el mètode de classe Gson anterior.

    TypeAdapter getAdapter (tipus TypeToken):

Si voleu obtenir l'adaptador de tipus per a un tipus concret, aquest és un altre mètode de Gson per utilitzar.

    T fromJson(String json, TypeOfT):

El mètode de classe Gson anterior converteix la cadena JSON en un objecte d'un tipus particular.

    void toJson (Object src, Appendable writer):

Per serialitzar l'objecte Java específic en la seva representació JSON respectiva, s'utilitza el mètode Gson anterior.

    void toJson (JsonElement jsonElement, escriptor JsonWriter):

El mètode de classe Gson anterior s'utilitza per escriure JSON a l'escriptor per al jsonElement.

    String toJson(JsonElement jsonElement):

Els elements JSON estan disposats en una estructura en forma d'arbre. Quan voleu representar elements JSON en la seva representació equivalent, heu d'utilitzar el mètode Gson anterior.

    String toJson (Object src):

El mètode anterior és un altre mètode Gson que s'utilitza per serialitzar un objecte Java particular en la seva cadena o representació JSON respectiva.

    void toJson (JsonElement jsonElement, escriptor adjunt):

Per a tots els JsonELements d'un arbre, el mètode de classe Gson anterior escriu el seu JSON equivalent.

    void toJson (Object src, TypeOfSrc, Appendable writer):

Aquest mètode Gson s'utilitza per serialitzar l'objecte específic a la seva cadena JSON respectiva. També serialitza objectes de tipus genèric.

    JsonElement toJsonTree(Object src):

El mètode Gson anterior converteix un objecte Java concret en el seu valor JSON respectiu. Representa el valor JSON a l'arbre JsonElements.

    String toJson (Object src, TypeOfSrc):

De nou, el mètode anterior és un mètode de la classe Gson, que converteix els objectes Java específics, inclosos tots els tipus genèrics, en els seus respectius valors JSON.

    void toJson (Object src, TypeOfSrc, JsonWriter writer):

Aquest mètode Gson s'utilitza per escriure l'src del tipus typeOfSrc a la seva representació JSON a l'escriptor.

    JsonElement toJsonTree(Object src, TypeOfSrc):

El mètode anterior converteix un objecte Java particular, inclosos tots els tipus genèrics, en la representació JSON específica. Representa el valor JSON a l'arbre JsonElements.

La classe Gson hereta tots els mètodes anteriors de la classe java.lang.Object. Vegem un exemple que mostra l'identificador de l'empleat, el nom, l'edat i el càrrec. Assegureu-vos que feu servir el nom de la classe igual que el del nom del fitxer. Tingueu en compte que hem emmagatzemat el nostre fitxer Java a C:/>GSON_WORKSPACE. A l'exemple esmentat a continuació, el nom del fitxer és GsonEmployee2.java.

Exemple:

|_+_|

Sortida:

Després d'escriure el codi Java i desar-lo amb un nom semblant al nom de la classe, cal compilar-lo. Utilitzeu l'ordre següent per compilar.

|_+_|

El fitxer java, GsonEmployee2.java, es compila.

Després de la compilació, l'heu executat amb l'ordre següent.

|_+_|

La sortida es mostrarà de la següent manera:

|_+_|

Enllaç de dades a Gson

Hem vist tres formes diferents de processar JSON proporcionades per Gson. Un dels formularis de processament JSON a Gson és Data Binding. Mitjançant el formulari de processament d'enllaç de dades, podeu transformar JSON a Plain Old Java Object (POJO) i POJO a JSON. La conversió entre JSON i POJO es fa mitjançant el descriptor de propietat o anotacions. Les anotacions d'accés de propietats són de dos tipus diferents, l'enllaç de dades primitives i l'enllaç de dades d'objectes.

Enllaç de dades de Primitives: Aquest descriptor de propietat o anotació transforma JSON en l'objecte de diversos tipus de dades Java, com ara Maps, Strings, Booleans, Lists i Null. També converteix tots aquests tipus de dades d'objectes esmentats a JSON.

Enllaç de dades d'objectes: L'enllaç de dades d'objectes converteix qualsevol valor JSON en tipus JAVA i viceversa.

L'enfocament d'enllaç de dades del processament de JSON és similar a l'anàlisi JAXB de XML. Gson pot llegir i escriure valors JSON en qualsevol dels dos tipus d'enllaç de dades anteriors. Estudiem cada tipus d'enllaç de dades amb detall a continuació.

Vinculació de dades de Primitives

L'enfocament de l'enllaç de dades de Primitives per processar JSON converteix el valor JSON en qualsevol dels tipus de dades Java. En l'enfocament d'enllaç de dades, Gson ofereix diversos adaptadors integrats. Aquests adaptadors s'utilitzen per serialitzar i deserialitzar tipus de dades primitius. Entenem el mètode d'enllaç de dades primitius de Gson per processar JSON amb un exemple.

A continuació es mostra un exemple que mostra la conversió entre els tipus de dades primitives JSON i Java. Heu de recordar que el vostre nom de fitxer ha de ser el mateix que el del nom de la classe. Deseu el vostre fitxer a C:>GSON_WORKSPACE. A l'exemple següent, el nom del fitxer és GsonEmployee3.java.

Exemple:

|_+_|

Sortida:

En primer lloc, heu de compilar el codi anterior mitjançant l'ordre següent.

|_+_|

Després de la compilació, heu d'executar el codi mitjançant l'ordre següent.

|_+_|

Es mostrarà la següent sortida.

|_+_|

Aquí, podeu observar clarament la diferència entre la sortida generada després de la serialització i la deserialització mitjançant l'enfocament d'enllaç de dades primitives.

Enllaç de dades d'objectes

Ara, anirem cap a l'enfocament Objects Data Binding de Gson per processar JSON. Aquest enfocament assigna el valor JSON a qualsevol tipus JAVA i qualsevol objecte Java a la seva representació JSON respectiva. El procés d'enllaç de dades d'objectes s'explica a continuació:

  1. En primer lloc, heu de crear una instància Gson mitjançant el mètode Gson().
|_+_|
  1. Ara, convertiu l'objecte Java al valor JSON. Considereu l'objecte Java com a emp per a la classe Employee.
|_+_|
  1. Finalment, convertiu el valor o la cadena JSON al seu objecte Java respectiu. Considereu la classe Employee i preneu un objecte com a emp1.
|_+_|

Utilitzant aquests passos anteriors, executarem un exemple senzill de l'enfocament d'enllaç de dades d'objectes. Utilitzarem el nom de la classe com a GsonEmployee4. Per tant, el nom del fitxer s'hauria de desar com a GsonEmployee4.java. En aquest exemple, mostrarem la informació d'un empleat que conté nom, identificador, càrrec, edat i ciutat.

Exemple:

|_+_|

Sortida:

Ara, heu de compilar el vostre codi. Seguiu l'ordre següent per compilar.

|_+_|

Executeu el vostre codi amb l'ordre,

|_+_|

Obtindreu la següent sortida:

|_+_|

Aquí, hem observat l'enfocament d'enllaç de dades de Gson per processar JSON amb exemples. Vegem ara un altre enfocament de processament JSON.

API de streaming a Gson

L'API de streaming és un altre formulari de Gson per processar JSON. En l'enfocament de l'API de streaming, el valor JSON es llegeix i s'escriu com a testimoni. Aquest enfocament considera cada valor JSON com un esdeveniment discret. Aquí, JsonReader llegeix les dades JSON i JsonWriter escriu les dades Json com a testimoni. Per tant, es coneix com JsonToken.

L'API de streaming és molt coneguda per supervisar amb cura totes les dades JSON. En aquest article, veurem llegir les dades JSON mitjançant el mètode de l'API de streaming. El procés de lectura de les dades JSON es fa de la següent manera:

  • Com que ens centrem a llegir les dades JSON, utilitzarem la funció JsonReader(). En primer lloc, heu de generar un objecte de la funció JsonReader() i passar aquest objecte al text JSON.
|_+_|

Aquí, 'jsread' és l'objecte de la funció JsonReader().

  • Després de crear un objecte, comenceu a llegir el text JSON amb aquest objecte i obteniu el testimoni.
|_+_|
  • Finalment, heu de comprovar el tipus de testimoni que obteniu després de llegir el text JSON.
|_+_|

Veurem un exemple de JsonReader. Preneu el nom de la classe com a EmployeeRead. Assegureu-vos de desar el nom del fitxer com a EmployeeRead.java al C:

Exemple:

|_+_|

Sortida:

Per compilar el codi anterior, escriviu l'ordre de la següent manera,

|_+_|

Després de compilar, executeu el programa utilitzant la línia de codi següent,

|_+_|

La sortida serà la següent:

|_+_|

Es tractava de l'enfocament de l'API de streaming per processar JSON. Ara, anem a la forma final, el model d'arbre.

Model d'arbre a Gson

L'últim enfocament per processar JSON que ofereix Gson és el model d'arbre. Com el seu nom indica, representa el document JSON en una estructura en forma d'arbre. Aquesta estructura en forma d'arbre implica nodes JsonObject. El model d'arbre és similar a l'analitzador DOM d'XML. Vegem ara com crear un arbre i com recórrer l'arbre.

Com crear un arbre a partir d'un document JSON?

Per crear l'arbre a partir del document JSON, utilitzarem el mètode JsonParser(). El mètode JsonParser() té un punter amb ell, que llegeix el document JSON i apunta a l'arrel de l'arbre. Utilitzant un sol node arrel, podem recórrer un arbre sencer. Aquí teniu un petit codi que us ajudarà a crear un arbre a partir de les dades JSON.

Seguiu els passos següents per crear un arbre a partir de dades JSON:

  • El mètode JsonParser() s'utilitza per crear un arbre. El primer pas és fer la instància o objecte del mètode JsonParser().
|_+_|

Aquí, 'jsparser' és l'objecte del mètode JsonParser().

  • El següent pas és especificar la cadena o les dades JSON que voleu representar en una estructura en forma d'arbre.
|_+_|
  • L'últim pas és crear un arbre a partir de les dades especificades anteriorment.
|_+_|

Com travessar un arbre?

Hem vist com crear un arbre a partir de dades JSON. Ara, observarem com recórrer l'arbre dissenyat des del document JSON. Per recórrer l'arbre, heu de veure el camí de cada node des d'aquest node en particular fins al node arrel. Aquí teniu un petit codi per guiar-vos per travessar un arbre.

|_+_|

Aquest va ser un exemple més senzill de travessar l'arbre. Ara, tindrem una única instància de crear i recórrer l'arbre a partir de les dades jSON. Crearem un nom de classe com a GsonTree. Per tant, assegureu-vos de desar el fitxer amb el nom, GsonTree.java, a C:>Gson_WORKSPACE.

Exemple:

|_+_|

Sortida:

Per compilar el programa anterior, utilitzeu l'ordre següent,

|_+_|

Després de la compilació, heu d'executar el codi següent,

|_+_|

La sortida es mostrarà de la següent manera:

|_+_|

Hem vist els tres formularis de processament JSON que ofereix Gson amb exemples respectius. Ara executem alguns exemples de serialització i deserialització a Gson.

Exemples de serialització i deserialització a Gson

Aquesta secció us proporcionarà alguns exemples de serialització i deserialització senzills i senzills a Gson. Veurem exemples de matrius, col·leccions i tipus genèrics.

Exemple de matriu a Gson

Presentarem aquí un petit codi per a una millor comprensió de la serialització i deserialització de matrius.

|_+_|

Ara, executarem un codi complet, que us farà entendre la serialització i la deserialització de matrius. Crearem una classe GsonColor. Assegureu-vos de desar el vostre fitxer Java, anomenat GsonColor.java, a C:>GSON_WORKSPACE.

Exemple:

|_+_|

Sortida:

Per compilar el codi anterior, escriviu l'ordre següent,

|_+_|

Executeu el codi anterior amb l'ordre de la següent manera,

|_+_|

La sortida es mostrarà com:

|_+_|

Exemple de genèrics a Gson

A Gson, hi ha una API de reflexió de Java. Aquesta API és útil per identificar el tipus d'objecte al qual s'assigna la cadena o el valor JSON. Quan utilitzeu genèrics a Gson, el valor JSON representat al seu tipus d'objecte respectiu no està disponible a la serialització. Per tant, per superar aquest problema als genèrics Gson, hi ha una classe, com.google.gson.reflect.TypeToken. La funció principal d'aquesta classe és contenir l'objecte genèric.

A continuació tindrem un exemple de tipus genèric. Creem una classe, GsonGenerics. Assegureu-vos de desar el fitxer del programa Java a C:>GSON_WORKSPACE amb el nom GsonGenerics.java

Exemple

|_+_|

Sortida

Compileu el codi anterior amb l'ordre

|_+_|

Executeu el codi amb l'ordre següent

|_+_|

El programa anterior quan s'executa generarà la següent sortida.

|_+_|

Exemple de col·leccions a Gson

L'exemple de col·leccions a Gson inclou el mètode ArrayList(). Aquí hi ha un petit bloqueig de codi perquè entengui l'exemple de col·leccions de serialització i deserialització a Gson.

|_+_|

Aquest era el petit codi. Vegem ara algunes línies de codi més grans que representen la serialització i deserialització de col·leccions a Gson. Creeu una classe GsonCollection i deseu el fitxer del programa Java amb el nom, GsonCollection.java. Deseu el fitxer a C:>GSON_WORKSPACE.

Exemple

|_+_|

Sortida

Compileu el fitxer amb l'ordre següent,

|_+_|

Executeu el fitxer anterior escrivint després l'ordre següent a l'indicador d'ordres,

|_+_|

El següent és el resultat del programa de col·leccions anterior a Gson.

|_+_|

Conclusió

Gson és un conjunt d'eines que us permet convertir la cadena o valor JSON en l'objecte Java respectiu i l'objecte Java en la cadena o valor JSON equivalent. Gson ofereix tres enfocaments de processament diferents per a JSON.

  • Data Binding transforma el valor JSON en POJO i POJO en el valor JSON corresponent.
  • L'enfocament de l'API de streaming utilitza JsonReader i JsonWriter per llegir i escriure dades JSON com a testimoni.
  • El mètode del model d'arbre representa el document JSON en una estructura similar a un arbre.

Hem vist com configurar la variable d'entorn per a Gson. Després de configurar la variable d'entorn Gson, executeu el codi Gson. A continuació, podeu veure un exemple de serialització d'objectes. En la serialització d'objectes, el document JSON es llegeix a l'objecte Java i l'objecte Java es llegeix al document JSON corresponent.

A continuació, hem vist el programa Gson senzill i els mètodes de classe Gson. Cada enfocament de processament JSON, Data Binding, Tree Model i Streaming API s'expliquen amb un exemple cadascun. Més endavant, hem tractat exemples de serialització i deserialització a Gson. Hem executat un exemple de matriu, un exemple de tipus genèric i un exemple de col·leccions.