Programování

GSON – Rychlý průvodce pro začátečníky

30. října 2021

Obsah

Co je GSON?

Gson , také označovaná jako Google Gson, je knihovna založená na Javě, která je užitečná pro serializaci a deserializaci Java objektů. Jinými slovy, Gson se používá k transformaci objektů Java do JSON formulář. Také převádí jakýkoli řetězec JSON na příslušný objekt Java.

Gson umožňuje uživatelům přizpůsobovat Java objekty a široce podporuje Java Generics. Používá dvě přímé metody, toJson() pro převod objektu Java na řetězec JSON a fromJson() pro převod řetězce JSON na objekt Java. Jedním z významných cílů Gson je převést je Jáva objektů do jejich příslušného řetězce JSON, které nelze upravit.

Gson obsahuje serializátor a deserializátor. Serializátor Gson vám umožňuje transformovat řetězec JSON na příslušný objekt Java. Můžete serializovat několik podobných objektů Java. Na druhou stranu Gson deserializer transformuje objekt Java na jeho samostatný řetězec JSON.

Vlastnosti Gson:

Zde jsou některé nejžádanější funkce Gson.

  • Gson je open-source knihovna Google, což je standardizovaná knihovna podporovaná generiky Java.
  • Tato knihovna Google také podporuje složité objekty s hierarchií dědičnosti. Podporuje také vnořené třídy.
  • Během serializace a deserializace objektů Java pomáhá Gson uživatelům vytvořit přizpůsobitelný serializátor a deserializátor. Umožní uživatelům mít kontrolu nad procesem. Navíc můžete deserializovat ty objekty Java, jejichž kód není dostupný nebo přístupný.
  • Další vlastností Gson je, že je vysoce přizpůsobitelný. Uživatelé se mohou rozhodnout, zda potřebují vytisknout komplexní výstup nebo výstup čitelný pro člověka.
  • Gson vyžaduje méně paměti a je velmi rychlý a rychlý.
  • Závisí pouze na Java Development Kit (JDK) a nevyžaduje žádnou další externí knihovnu.

Jak zpracovat JSON?

Existují tři různé způsoby zpracování JSON, které nabízí knihovna Gson, Streaming API, Tree Model a Data Binding. Pojďme diskutovat o každém formuláři zpracování JSON.

Streamovací API

Ve streamovací metodě API zpracování JSON se veškerý obsah JSON čte a zapisuje jako samostatné události. Data JSON se čtou pomocí JsonReader a zapisují se pomocí JsonWriter. JsonReader a JsonWriter zacházejí s daty JSON jako s tokenem. Tento token se nazývá JsonToken. Metoda streaming API pro zpracování JSON je nejúčinnější a rychlejší metoda než ostatní dvě. Provádí operace čtení a zápisu rychle a rychle.

Model stromu

Další metodou zpracování JSON je stromový model. Ve stromovém modelu je obsah JSON reprezentován jako stromová struktura. Tato stromová struktura dat JSON obsahuje uzly JsonObjects. Stromový model je nejflexibilnější metodou pro zpracování JSON. Je to stejné jako u DOS parseru XML.

Vazba dat

Přístup datové vazby pro zpracování JSON používá přístupový objekt vlastnosti. Přístupový objekt vlastnosti transformuje JSON na Obyčejný starý objekt Java (POJO) a naopak. V přístupu datové vazby, který provádí Jsonreads a Jsonwrites, jsou adaptéry datových typů. Tato metoda vazby dat je stejná jako metoda analyzátoru JAXB XML.

Environmentální nastavení Gson

Pokud váš systém nemá nastaveno místní prostředí Java, musíte jej nejprve nastavit. Nastavení prostředí Java ve vašem systému je velmi jednoduché a zvládnutelné. Zde je pro vás kompletní průvodce nastavením místního prostředí Java. Postupně postupujte podle níže uvedených kroků k úspěšnému nastavení místního prostředí Java.

  • Nejprve si musíte stáhnout JavaSE z webová stránka . Ujistěte se, že jste si stáhli verzi JavaSE kompatibilní s operačním systémem vašeho počítače.
  • Stáhněte si soubor JavaSE a postupujte podle pokynů zobrazených během instalace. JavaSE se nainstaluje do vašeho systému.
  • Poté jste nastavili správnou cestu proměnných prostředí.

Kroky pro nastavení cesty pro Windows 2000/XP

Přesuňte soubor JavaSE, který jste stáhli z výše uvedeného webu, do adresáře místní jednotky C/Program Files/java/jdk. Dále se podívejte na níže uvedené kroky k nastavení cesty pro proměnné prostředí.

  • Přejděte na „Tento počítač“ a klikněte na něj pravým tlačítkem. Všimněte si „Vlastnosti“ a klikněte na něj.
  • Později přejděte na kartu „Upřesnit“ a klikněte na tlačítko „Proměnné prostředí“.
  • Zkontrolujte cestu. Změňte cestu do adresáře jdk, kde jsme uložili stažený soubor JavaSE. Pokud je aktuální cesta ‚C:WINDOWSSYSTEM32,‘ změňte ji na ‚C:WINDOWSSYSTEM32;c:Program Filesjavajdkin.‘

Kroky pro nastavení cesty pro Windows 95 / 98 / ME

Po stažení souboru JavaSE jej přesuňte do adresáře C/Program Files/java/jdk. Pro nastavení cesty ve Windows 95 / 98 / ME postupujte podle následujících kroků:

  • Přejděte do souboru ‚C:autoexec.bat‘. Později přidejte ‚SET PATH=%PATH%;C:Program Filesjavajdkin‘ na konec ‚C:autoexec.bat‘.

Kroky pro nastavení cesty pro systémy Linux, Solaris, FreeBSD a UNIX

Pro systémy Linux, Solaris, FreeBSD a UNIX musíte nastavit PATH na místo, kde jsou nainstalovány všechny binární soubory Java. Například použijte bash váš shell. K nastavení cesty použijte následující řádek kódu.

‘.bashrc: export PATH=/cesta/k/java/java:$PATH’.

Jak nastavit prostředí Gson?

Jakmile nastavíte cestu Java, zde jsou zbývající kroky pro nastavení prostředí JSON vašeho systému.

  • Nejprve si musíte stáhnout archiv Gson. Ujistěte se, že jste si stáhli nejnovější verzi archivu Gson. Stáhněte si archiv Gson nebo soubor Gson jar z gson-2.3.1.jar. Pro systémy Microsoft Windows, Linux a macOS je název archivního souboru JSON ‚gson-2.3.1.jar.‘ Po stažení souboru gson-2.3.1.jar jej zkopírujte do složky C:>gson.
Operační systém Název archivního souboru
Microsoft Windowsgson-2.3.1.jar.
Mac OS Xgson-2.3.1.jar.
Linuxgson-2.3.1.jar.
  • Dalším krokem je nastavení cesty pro proměnnou prostředí GSON_HOME. Musíte opravit cestu proměnné prostředí GSON_HOME na místo, kde je v systému umístěn váš soubor gson-2.3.1.jar. Pro různé operační systémy se cesta prostředí GSON_HOME liší. Níže uvedená tabulka vás provede změnou aktuální cesty vašeho systému na cestu GSON.
Operační systém Výsledek
Microsoft WindowsZměňte proměnnou prostředí z GSON_HOME na C:gson.
Mac OS XPomocí níže uvedeného příkazu změňte proměnnou prostředí na macOS.exportGSON_HOME = /usr/local/gson
LinuxChcete-li změnit proměnnou prostředí v systému Linux, postupujte podle níže uvedeného příkazu.exportGSON_HOME = /Library/gson
  • Po nastavení cesty JSON pro proměnnou prostředí GSON_HOME musíte nastavit CLASSPATH proměnné prostředí. Opravte proměnnou prostředí CLASSPATH na místo, kde se nachází váš soubor jar Gson.
Operační systémy Výsledek
Microsoft Windows% CLASSPATH%;% GSON_HOME% gson-2.3.1.jar;.;
Mac OS Xexport CLASSPATH = $ CLASSPATH: $ GSON_HOME / gson-2.3.1.jar :.
Linuxexport CLASSPATH = $ CLASSPATH: $ GSON_HOME / gson-2.3.1.jar :.

Příklad Gson Java

Viděli jsme, jak nastavit místní prostředí Java a prostředí Gson ve vašem systému Windows, Linux a operační systémy macOS. Jakmile nastavíte vše potřebné ke spuštění kódu Gson, jste připraveni spustit jakoukoli aplikaci. Jeden příklad si můžete sami vyzkoušet na svém systému.

Pro vyzkoušení níže uvedeného příkladu Gson můžete použít některý z populárních editorů Java, např poznámkový blok , Netbeans , nebo Zatmění . Poznámkový blok je jedním z typických textových editorů používaných pro psaní kódu Java. Pokud máte systém Windows, můžete pro psaní kódu Java použít textový editor Notepad. Další platformou je Netbeans. Je to Integrované vývojové prostředí (IDE) . Netbeans si můžete stáhnout do svých systémů Windows, Linux, Solaris a macOS. Dalším textovým editorem pro Javu je Eclipse. Servery Eclipse jako textový editor pro více programovacích jazyků. Eclipse si můžete stáhnout na systémy Windows, Linux a macOS.

Než uvidíme příklad Gson, nezapomeňte vytvořit soubor Java s názvem ‚GsonEmployee‘, což je název třídy Java. Později se ujistěte, že váš soubor Java ‚GsonEmployee‘ je přítomen v C:>GSON_WORKSPACE. Uložte svůj soubor do tohoto adresáře s příponou .java.

Příklad:

|_+_|

Výstup:

Pro spuštění výše uvedeného kódu Gson postupujte podle níže uvedených kroků.

  1. Vyplňte výše uvedený kód pomocí klíčového slova „javac“.
|_+_|
  1. Po kompilaci spusťte kód pomocí klíčového slova ‚java‘.
|_+_|
  1. Pokud v kódu nejsou žádné chyby, zobrazí se výsledek výše uvedeného kódu Gson.
|_+_|

Zde je pro vás jednoduchý průvodce vytvářením, serializací a deserializací objektu Gson.

  • Nejprve musíte vytvořit znovu použitelný objekt Gson pomocí funkce GsonBuilder().
|_+_|
  • Po vytvoření objektu Gson musíte deserializovat řetězec JSON na objekt Java. K tomuto účelu používáme funkci fromJson(). V této funkci musíte předat dva parametry, řetězec JSON a typ objektu.
|_+_|
  • Později budete muset serializovat objekt Java na řetězec JSON pomocí funkce toJson(). Tato funkce vyžaduje pouze jeden parametr, objekt.
|_+_|

Gson - Serializace objektů

Serializace objektů Gson znamená načtení objektu Java do dokumentu JSON a následné načtení dokumentu JSON do objektu Java. Dejte nám vědět, jak probíhá serializace objektu Gson na jednom příkladu. Vezměme stejný příklad zaměstnance, jak je uvedeno výše. Zobrazili jsme ID zaměstnance, jméno, věk a pozici. V tomto příkladu ukážeme stejný výsledek a podíváme se na serializaci objektů Gson.

Podobně musíte vytvořit třídu s názvem GsonEmployee a umístit tento soubor do C:>GSON_WORKSPACE. Nezapomeňte uložit název souboru jako GsonEmployee.java.

Příklad

|_+_|

Výstup:

Chcete-li provést výše uvedený kód, musíte postupovat podle výše uvedených kroků.

  • Pro kompilaci kódu použijte klíčové slovo „javac“.
|_+_|
  • Po zkompilování spusťte kód pomocí klíčového slova „java“.
|_+_|
  • Výsledek tohoto kódu bude stejný jako výše uvedený, zobrazí se jméno, věk a pozice zaměstnance.
|_+_|

Třída Gson

Viděli jsme, jak serializovat objekt Gson. Jinými slovy, přečetli jsme objekt Java do jeho ekvivalentního řetězce JSON a řetězec JSON do jeho příslušného objektu Java. Nyní se přesuneme ke třídě Gson.

Gson je primární a významná třída knihovny Google Gson. Třída Gson je zodpovědná za převod objektů Java na řetězec JSON a řetězec JSON na příslušné objekty Java. Pro třídu Gson musíte nejprve použít funkci GsonBuilder() a poté použít funkce toJson() a fromJson() pro čtení a zápis řetězců JSON. Níže je uvedena syntaxe deklarace třídy pro com.google.gson.Gson.

Syntax:

|_+_|

Gson Builder

V kódu Java lze použít konstruktor Gson. Je definován jako Gson(). Konstruktor Gson() vytvoří objekt Gson. Protože Gson() nejsou předávány žádné parametry, vyžaduje výchozí konfiguraci.

Metody třídy Gson

Nyní přejdeme k metodám třídy Gson. Níže jsou uvedeny některé efektivní metody třídy Gson s jejich popisem.

    T fromJson(JsonElement json, Class classOfT):

Výše uvedená metoda třídy Gson používá konkrétní strom analýzy k deserializaci přečteného Json na konkrétní typ objektu.

    T fromJson(JsonElement json, Type typeOfT):

Tato metoda třídy Gson se také používá ke stejnému účelu jako výše uvedená metoda. Používá Json načtený ze specifického stromu analýzy a převádí jej na ekvivalentní typ objektu.

    T fromJson(Reader json, Type TypeOfT):

Výše uvedená metoda třídy Gson přebírá čtení Json z konkrétní čtečky a deserializuje jej na konkrétní typ objektu.

    T fromJson(čtečka JsonReader, Typ typeOfT):

Výše uvedenou metodu třídy Gson můžete použít pro čtení dalšího řetězce nebo hodnoty JSON z konkrétní čtečky. Po přečtení tato metoda transformuje hodnotu JSON na objekt typeOfT.

    T fromJson(Reader json, Class classOfT):

Tato metoda třídy Gson přebírá čtení JSON z konkrétní čtečky a deserializuje je na zadaný objekt třídy.

    TypeAdapter getDelegateAdapter (TypeAdapterFactory skipPast, typ TypeToken):

Pokud pro konkrétní typ požadujete adaptér alternativního typu, můžete použít výše uvedenou metodu třídy Gson.

    TypeAdapter getAdapter (typ třídy):

Tato metoda třídy Gson se používá k získání typového adaptéru pro konkrétní typ.

    T fromJson(String json, Class classOfT):

Pokud chcete deserializovat jakýkoli řetězec JSON na konkrétní objekt třídy, můžete použít výše uvedenou metodu třídy Gson.

    TypeAdapter getAdapter (typ TypeToken):

Pokud chcete získat typový adaptér pro konkrétní typ, je to opět metoda Gson, kterou můžete použít.

    T fromJson(Řetězec json, Typ typeOfT):

Výše uvedená metoda třídy Gson převádí řetězec JSON na objekt určitého typu.

    void toJson(Object src, Appendable Writer):

Pro serializaci konkrétního Java objektu do jeho příslušné reprezentace JSON se používá výše uvedená metoda Gson.

    void toJson(JsonElement jsonElement, spisovatel JsonWriter):

Výše uvedená metoda třídy Gson se používá k zápisu JSON do zapisovače pro jsonElement.

    Řetězec toJson(JsonElement jsonElement):

Prvky JSON jsou uspořádány do stromové struktury. Pokud chcete reprezentovat prvky JSON do jejich ekvivalentní reprezentace, musíte použít výše uvedenou metodu Gson.

    Řetězec toJson(Object src):

Výše uvedená metoda je další metodou Gson používanou pro serializaci konkrétního objektu Java do jeho příslušného řetězce nebo reprezentace JSON.

    void toJson(JsonElement jsonElement, Appendable Writer):

Pro všechny JsonELements ve stromu zapisuje výše uvedená metoda třídy Gson jejich ekvivalentní JSON.

    void toJson(Object src, Type typeOfSrc, Appendable Writer):

Tato metoda Gson se používá pro serializaci konkrétního objektu do jeho příslušného řetězce JSON. Také serializuje objekty obecného typu.

    JsonElement toJsonTree(Object src):

Výše uvedená metoda Gson převede konkrétní objekt Java na jeho příslušnou hodnotu JSON. Představuje hodnotu JSON ve stromu JsonElements.

    String toJson(Object src, Type typeOfSrc):

Výše uvedená metoda je opět jednou z metod ve třídě Gson, která převádí konkrétní objekty Java, včetně všech generických typů, na jejich příslušné hodnoty JSON.

    void toJson(Object src, Type typeOfSrc, JsonWriter Writer):

Tato metoda Gson se používá k zápisu src typu typeOfSrc do jeho reprezentace JSON pro zapisovač.

    JsonElement toJsonTree(Object src, Type typeOfSrc):

Výše uvedená metoda převede konkrétní objekt Java, včetně všech generických typů, na konkrétní reprezentaci JSON. Představuje hodnotu JSON ve stromu JsonElements.

Třída Gson dědí všechny výše uvedené metody ze třídy java.lang.Object. Podívejme se na jeden příklad zobrazení ID zaměstnance, jména, věku a pozice. Ujistěte se, že používáte název třídy stejný jako název vašeho souboru. Zvažte, že jsme uložili náš soubor Java na C:/>GSON_WORKSPACE. V níže uvedeném příkladu je název souboru GsonEmployee2.java.

Příklad:

|_+_|

Výstup:

Po napsání kódu Java a jeho uložení s názvem podobným názvu třídy jej musíte zkompilovat. Pro kompilaci použijte níže uvedený příkaz.

|_+_|

Soubor java, GsonEmployee2.java, bude zkompilován.

Po kompilaci jste jej spustili pomocí níže uvedeného příkazu.

|_+_|

Výstup se zobrazí následovně:

|_+_|

Datové vazby v Gson

Viděli jsme tři různé formy zpracování JSON poskytované společností Gson. Jedním z formulářů pro zpracování JSON v Gson je Data Binding. Pomocí formuláře pro zpracování datové vazby můžete transformovat JSON na obyčejný starý objekt Java (POJO) a POJO na JSON. Konverze mezi JSON a POJO probíhá pomocí přístupového objektu vlastnosti nebo anotací. Anotace přístupového objektu vlastnosti jsou dvou různých typů, Primitives Data Binding a Objects Data Binding.

Primitives Data Binding: Tento přístupový objekt nebo anotace vlastnosti transformuje JSON na objekt různých datových typů Java, jako jsou mapy, řetězce, logické hodnoty, seznamy a null. Všechny tyto zmíněné objektové datové typy také převádí do JSON.

Objektová datová vazba: Vazba dat objektů převede jakoukoli hodnotu JSON na typ JAVA a naopak.

Přístup datové vazby při zpracování JSON je podobný analýze JAXB XML. Gson může číst a zapisovat hodnoty JSON v kterémkoli z výše uvedených dvou typů datových vazeb. Níže podrobně prostudujeme každý typ datové vazby.

Primitives Data Binding

Primitives Data Binding přístup pro zpracování JSON převádí hodnotu JSON do libovolného datového typu Java. V přístupu k datové vazbě nabízí Gson několik vestavěných adaptérů. Tyto adaptéry se používají pro serializaci a deserializaci primitivních datových typů. Pojďme pochopit primitivní metodu vazby dat Gson pro zpracování JSON na jednom příkladu.

Níže je uveden příklad ukazující převod mezi primitivními datovými typy JSON a Java. Musíte si pamatovat, že název vašeho souboru by měl být stejný jako název třídy. Uložte soubor do C:>GSON_WORKSPACE. V níže uvedeném příkladu je název souboru GsonEmployee3.java.

Příklad:

|_+_|

Výstup:

Nejprve musíte zkompilovat výše uvedený kód pomocí níže uvedeného příkazu.

|_+_|

Po kompilaci musíte kód spustit pomocí níže uvedeného příkazu.

|_+_|

Zobrazí se následující výstup.

|_+_|

Zde můžete jasně pozorovat rozdílnost mezi výstupem generovaným po serializaci a deserializaci pomocí přístupu primitives data binding.

Objektová datová vazba

Nyní se přesuneme k přístupu Objects Data Binding společnosti Gson pro zpracování JSON. Tento přístup mapuje hodnotu JSON na jakýkoli typ JAVA a jakýkoli objekt Java na příslušnou reprezentaci JSON. Proces vázání dat objektů je vysvětlen níže:

  1. Nejprve musíte vytvořit instanci Gson pomocí metody Gson().
|_+_|
  1. Nyní převeďte objekt Java na hodnotu JSON. Považujte objekt Java za emp pro třídu Employee.
|_+_|
  1. Nakonec převeďte hodnotu nebo řetězec JSON na příslušný objekt Java. Zvažte třídu Employee a vezměte objekt jako emp1.
|_+_|

Pomocí těchto výše uvedených kroků provedeme jeden přímý příklad přístupu k datové vazbě objektů. Použijeme název třídy jako GsonEmployee4. Název souboru by tedy měl být uložen jako GsonEmployee4.java. V tomto příkladu zobrazíme informace o zaměstnanci obsahující jméno, id, pozici, věk a město.

Příklad:

|_+_|

Výstup:

Nyní musíte zkompilovat svůj kód. Pro kompilaci postupujte podle níže uvedeného příkazu.

|_+_|

Spusťte svůj kód pomocí příkazu,

|_+_|

Získáte následující výstup:

|_+_|

Zde jsme na příkladech pozorovali přístup Gson Data Binding pro zpracování JSON. Podívejme se nyní na další přístup zpracování JSON.

Streamovací API v Gson

Streaming API je další forma Gson pro zpracování JSON. V přístupu Streaming API se hodnota JSON čte a zapisuje jako token. Tento přístup považuje každou hodnotu JSON za samostatnou událost. Zde JsonReader čte data JSON a JsonWriter zapisuje data Json jako token. Proto je známý jako JsonToken.

Streaming API je velmi dobře známé tím, že pečlivě sleduje všechna data JSON. V tomto článku uvidíme čtení dat JSON pomocí metody Streaming API. Proces čtení dat JSON probíhá následovně:

  • Protože se zaměřujeme na čtení dat JSON, použijeme funkci JsonReader(). Nejprve musíte vygenerovat objekt funkce JsonReader() a předat tento objekt textu JSON.
|_+_|

Zde je „jsread“ objektem funkce JsonReader().

  • Po vytvoření objektu začněte číst text JSON s tímto objektem a získejte token.
|_+_|
  • Nakonec musíte zkontrolovat typ tokenu, který získáte po přečtení textu JSON.
|_+_|

Uvidíme jeden příklad JsonReaderu. Vezměte název třídy jako EmployeeRead. Ujistěte se, že jste uložili název souboru jako EmployeeRead.java v C:

Příklad:

|_+_|

Výstup:

Pro kompilaci výše uvedeného kódu zadejte příkaz následovně,

|_+_|

Po kompilaci spusťte program pomocí níže uvedeného řádku kódu,

|_+_|

Výstup bude následující:

|_+_|

To vše bylo o přístupu Streaming API pro zpracování JSON. Nyní pojďme ke konečné podobě, Tree Model.

Model stromu v Gson

Posledním přístupem při zpracování JSON, který Gson nabízí, je Tree Model. Jak jeho název napovídá, představuje dokument JSON ve stromové struktuře. Tato stromová struktura zahrnuje uzly JsonObject. Stromový model je podobný analyzátoru DOM XML. Podívejme se nyní, jak vytvořit strom a jak stromem procházet.

Jak vytvořit strom z dokumentu JSON?

Pro vytvoření stromu z dokumentu JSON použijeme metodu JsonParser(). Metoda JsonParser() má s sebou ukazatel, který čte dokument JSON a ukazuje na kořen stromu. Pomocí jediného kořenového uzlu můžeme procházet celým stromem. Zde je malý kód, který vám pomůže při vytváření stromu z dat JSON.

Při vytváření stromu z dat JSON postupujte podle následujících kroků:

  • K vytvoření stromu se používá metoda JsonParser(). Prvním krokem je vytvoření instance nebo objektu metody JsonParser().
|_+_|

Zde je „jsparser“ objektem metody JsonParser().

  • Dalším krokem je zadat řetězec nebo data JSON, která chcete zobrazit ve stromové struktuře.
|_+_|
  • Posledním krokem je vytvoření stromu z výše uvedených dat.
|_+_|

Jak přejít strom?

Viděli jsme, jak vytvořit strom z dat JSON. Nyní budeme sledovat, jak procházet navržený strom z dokumentu JSON. Chcete-li procházet stromem, musíte vidět cestu každého uzlu od konkrétního uzlu ke kořenovému uzlu. Zde je malý kód pro vás, jak procházet stromem.

|_+_|

Toto byl přímočařejší příklad procházení stromu. Nyní budeme mít jedinou instanci vytváření a procházení stromu z dat jSON. Vytvoříme název třídy jako GsonTree. Proto nezapomeňte uložit soubor s názvem GsonTree.java do C:>Gson_WORKSPACE.

Příklad:

|_+_|

Výstup:

Pro kompilaci výše uvedeného programu použijte níže uvedený příkaz,

|_+_|

Po kompilaci musíte spustit pomocí níže uvedeného kódu,

|_+_|

Výstup se zobrazí následovně:

|_+_|

Viděli jsme všechny tři formy zpracování JSON nabízené společností Gson s příslušnými příklady. Proveďme nyní několik příkladů serializace a deserializace v Gsonu.

Příklady serializace a deserializace v Gson

Tato část vám poskytne několik jednoduchých a přímočarých příkladů serializace a deserializace v Gsonu. Podíváme se na příklady Array, Collections a Generic Types.

Příklad pole v Gson

Uvedeme zde malý kód pro lepší pochopení serializace a deserializace pole.

|_+_|

Nyní provedeme kompletní kód, díky kterému pochopíte serializaci a deserializaci pole. Vytvoříme třídu GsonColor. Ujistěte se, že jste uložili svůj soubor Java s názvem GsonColor.java do složky C:>GSON_WORKSPACE.

Příklad:

|_+_|

Výstup:

Pro kompilaci výše uvedeného kódu zadejte níže uvedený příkaz,

|_+_|

Spusťte výše uvedený kód pomocí příkazu následovně,

|_+_|

Výstup se zobrazí jako:

|_+_|

Příklad generika v Gson

V Gsonu je Java reflexní API. Toto rozhraní API je užitečné při identifikaci typu objektu, na který je namapován řetězec nebo hodnota JSON. Když v Gson používáte generika, hodnota JSON reprezentovaná v příslušném typu objektu není v serializaci dostupná. K překonání tohoto problému v generikách Gson existuje třída com.google.gson.reflect.TypeToken. Primární funkcí této třídy je držet obecný objekt.

Níže budeme mít jeden příklad generického typu. Pojďme vytvořit třídu, GsonGenerics. Ujistěte se, že jste uložili soubor programu Java do C:>GSON_WORKSPACE s názvem GsonGenerics.java

Příklad

|_+_|

Výstup

Zkompilujte výše uvedený kód pomocí příkazu

|_+_|

Spusťte kód pomocí níže uvedeného příkazu

|_+_|

Výše uvedený program po spuštění vygeneruje následující výstup.

|_+_|

Příklad sbírek v Gson

Příklad kolekcí v Gson zahrnuje metodu ArrayList(). Zde je malý kódový zámek, abyste porozuměli příkladu serializace a deserializace kolekcí v Gson.

|_+_|

Toto byl malý kód. Nyní se podívejme na některé větší řádky kódu představující serializaci a deserializaci sbírek v Gsonu. Vytvořte třídu GsonCollection a uložte soubor programu Java s názvem GsonCollection.java. Uložte soubor do C:>GSON_WORKSPACE.

Příklad

|_+_|

Výstup

Zkompilujte soubor pomocí níže uvedeného příkazu,

|_+_|

Spusťte výše uvedený soubor zadáním následujícího příkazu na příkazovém řádku,

|_+_|

Následuje výsledek výše uvedeného programu kolekcí v Gson.

|_+_|

Závěr

Gson je sada nástrojů, která vám umožňuje převést řetězec nebo hodnotu JSON na příslušný objekt Java a objekt Java na ekvivalentní řetězec nebo hodnotu JSON. Gson nabízí tři různé přístupy zpracování pro JSON.

  • Data Binding transformuje hodnotu JSON na POJO a POJO na příslušnou hodnotu JSON.
  • Přístup Streaming API používá JsonReader a JsonWriter pro čtení a zápis dat JSON jako tokenu.
  • Metoda stromového modelu představuje dokument JSON do stromové struktury.

Viděli jsme, jak nastavit proměnnou prostředí pro Gson. Po nastavení proměnné prostředí Gson spustíte kód Gson. Dále můžete vidět příklad serializace objektů. Při serializaci objektů se dokument JSON načte do objektu Java a objekt Java se načte do příslušného dokumentu JSON.

Dále jsme viděli jednoduchý program Gson a metody třídy Gson. Každý přístup ke zpracování JSON, Data Binding, Tree Model a Streaming API jsou vysvětleny na jednom příkladu. Později jsme probrali příklady serializace a deserializace v Gsonu. Provedli jsme příklad pole, příklad obecného typu a příklad kolekcí.