Pengaturcaraan

GSON – Panduan Pantas Untuk Pemula

30 Oktober 2021

Isi kandungan

Apakah GSON?

Gson , juga dirujuk sebagai Google Gson, ialah perpustakaan berasaskan Java yang berguna untuk mensiri dan menyahsiri objek Java. Dalam istilah lain, Gson digunakan untuk mengubah objek Java menjadi JSON bentuk. Ia juga menukar mana-mana rentetan JSON ke dalam objek Java masing-masing.

Gson membolehkan pengguna menyesuaikan objek Java dan menyokong Java Generics secara meluas. Ia menggunakan dua kaedah mudah, toJson() untuk menukar objek Java kepada rentetan JSON dan fromJson() untuk menukar rentetan JSON ke objek Java. Salah satu matlamat penting Gson adalah untuk menukarnya Jawa objek ke dalam rentetan JSON masing-masing, yang tidak boleh diubah suai.

Gson termasuk serializer dan deserializer. Gson serializer membolehkan anda mengubah rentetan JSON kepada objek Java masing-masing. Anda boleh menyusun beberapa objek Java yang serupa. Sebaliknya, Gson deserializer mengubah objek Java menjadi rentetan JSON yang berasingan.

Ciri-ciri Gson:

Berikut adalah beberapa ciri Gson yang paling diingini.

  • Gson ialah pustaka Google sumber terbuka, yang merupakan perpustakaan piawai yang disokong oleh generik Java.
  • Pustaka Google ini juga menyokong objek kompleks yang mempunyai hierarki warisan. Ia juga menyokong kelas bersarang.
  • Semasa mensiri dan menyahsiri objek Java, Gson membantu pengguna mencipta pensiri dan penyahseriran yang boleh disesuaikan. Ia akan membolehkan pengguna mempunyai kawalan mereka ke atas proses tersebut. Selain itu, anda boleh menyahsiri objek Java yang kodnya tidak tersedia atau boleh diakses.
  • Satu lagi ciri Gson ialah ia sangat boleh disesuaikan. Pengguna boleh memutuskan sama ada mereka perlu mencetak output kompleks atau output boleh dibaca manusia.
  • Gson memerlukan kurang memori dan sangat pantas dan pantas.
  • Ia hanya bergantung pada Kit Pembangunan Java (JDK) dan tidak memerlukan perpustakaan luaran lain.

Bagaimana untuk memproses JSON?

Terdapat tiga cara berbeza untuk memproses JSON yang ditawarkan oleh pustaka Gson, API Penstriman, Model Pokok dan Pengikatan Data. Mari kita bincangkan setiap borang pemprosesan JSON.

API penstriman

Dalam kaedah API penstriman memproses JSON, semua kandungan JSON dibaca dan ditulis sebagai peristiwa diskret. Data JSON dibaca menggunakan JsonReader dan ditulis menggunakan JsonWriter. JsonReader dan JsonWriter memperlakukan data JSON sebagai token. Token ini dirujuk sebagai JsonToken. Kaedah API penstriman untuk memproses JSON adalah kaedah yang paling berkesan dan lebih cepat daripada dua yang lain. Ia melaksanakan operasi baca dan tulis dengan cepat dan pantas.

Model Pokok

Kaedah pemprosesan JSON yang lain ialah model pokok. Dalam model pokok, kandungan JSON diwakili sebagai struktur seperti pokok. Struktur seperti pepohon data JSON ini mengandungi nod JsonObjects. Model pokok ialah kaedah paling fleksibel untuk memproses JSON. Ia adalah sama seperti penghurai DOS XML.

Pengikatan Data

Pendekatan mengikat data untuk memproses JSON menggunakan pengakses harta. Pengakses harta mengubah JSON kepada Objek Java Lama Biasa (POJO) dan begitu juga sebaliknya. Terdapat penyesuai jenis data dalam pendekatan pengikatan data, yang melaksanakan Jsonreads dan Jsonwrites. Kaedah pengikatan data ini adalah sama seperti penghurai JAXB XML.

Persediaan Alam Sekitar Gson

Jika sistem anda tidak mempunyai persediaan persekitaran Java tempatan, anda perlu menyediakannya terlebih dahulu. Menyediakan persekitaran Java pada sistem anda adalah sangat mudah dan boleh diurus. Berikut ialah panduan lengkap untuk anda tentang menyediakan persekitaran Java tempatan. Ikuti langkah yang disenaraikan di bawah secara berurutan untuk berjaya menyediakan persekitaran Java tempatan.

  • Pertama, anda perlu memuat turun JavaSE dari laman web . Pastikan anda memuat turun versi JavaSE yang serasi dengan sistem pengendalian komputer anda.
  • Muat turun fail JavaSE dan patuhi arahan yang dipaparkan semasa pemasangan. JavaSE akan dipasang pada sistem anda.
  • Selepas itu, anda telah menyediakan laluan yang betul bagi pembolehubah persekitaran.

Langkah-langkah untuk menyediakan Path untuk Windows 2000/XP

Alihkan fail JavaSE yang anda muat turun dari tapak web di atas ke direktori C/Program Files/java/jdk pemacu setempat. Seterusnya, lihat langkah di bawah untuk menyediakan laluan bagi pembolehubah persekitaran.

  • Pergi ke 'Komputer Saya' dan klik kanan padanya. Anda akan melihat 'Properties' dan klik padanya.
  • Kemudian, pergi ke 'tab Lanjutan' dan klik pada butang 'Pembolehubah Alam Sekitar'.
  • Semak Laluan. Tukar Path ke direktori jdk, di mana kami telah menyimpan fail JavaSE yang dimuat turun. Jika laluan semasa ialah 'C:WINDOWSSYSTEM32,' tukarkannya kepada 'C:WINDOWSSYSTEM32;c:Program Filesjavajdkin.'

Langkah-langkah untuk menyediakan Path untuk Windows 95 / 98 / ME

Selepas memuat turun fail JavaSE, alihkannya ke direktori C/Program Files/java/jdk. Untuk menyediakan laluan pada Windows 95 / 98 / ME, ikut langkah di bawah:

  • Pergi ke fail 'C:autoexec.bat'. Kemudian, tambahkan 'SET PATH=%PATH%;C:Program Filesjavajdkin' pada penghujung 'C:autoexec.bat.'

Langkah-langkah untuk menyediakan Path untuk sistem Linux, Solaris, FreeBSD dan UNIX

Untuk sistem Linux, Solaris, FreeBSD dan UNIX, anda perlu menyediakan PATH ke tempat di mana semua binari Java dipasang. Sebagai contoh, gunakan bash shell anda. Gunakan baris kod berikut untuk menyediakan laluan.

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

Bagaimana untuk menyediakan Persekitaran Gson?

Setelah anda menetapkan laluan Java, berikut ialah langkah yang tinggal untuk menyediakan persekitaran JSON sistem anda.

  • Pertama, anda perlu memuat turun arkib Gson. Pastikan anda memuat turun versi terkini arkib Gson. Muat turun arkib Gson atau fail jar Gson daripada gson-2.3.1.jar. Untuk sistem Microsoft Windows, Linux dan macOS, nama fail arkib JSON ialah ‘gson-2.3.1.jar.’ Selepas memuat turun fail gson-2.3.1.jar, salinnya ke folder C:>gson.
Sistem operasi Arkib Nama Fail
Microsoft Windowsgson-2.3.1.jar.
Mac OS Xgson-2.3.1.jar.
Linuxgson-2.3.1.jar.
  • Langkah seterusnya ialah menetapkan laluan untuk pembolehubah persekitaran GSON_HOME. Anda perlu membetulkan laluan pembolehubah persekitaran GSON_HOME ke tempat fail gson-2.3.1.jar anda terletak pada sistem. Untuk sistem pengendalian yang berbeza, laluan persekitaran GSON_HOME berbeza. Jadual di bawah akan membimbing anda menukar laluan semasa sistem anda kepada laluan GSON.
Sistem operasi Hasilnya
Microsoft WindowsTukar pembolehubah persekitaran daripada GSON_HOME kepada C:gson.
Mac OS XIkut arahan di bawah untuk menukar pembolehubah persekitaran pada macOS.exportGSON_HOME = /usr/local/gson
LinuxIkut arahan di bawah untuk menukar pembolehubah persekitaran pada sistem Linux.exportGSON_HOME = /Library/gson
  • Selepas menetapkan laluan JSON untuk pembolehubah persekitaran GSON_HOME, anda perlu menetapkan CLASSPATH pembolehubah persekitaran. Betulkan pembolehubah persekitaran CLASSPATH ke tempat di mana fail jar Gson anda berada.
Sistem operasi Hasilnya
Microsoft Windows% CLASSPATH%;% GSON_HOME% gson-2.3.1.jar;.;
Mac OS Xeksport CLASSPATH = $ CLASSPATH: $ GSON_HOME / gson-2.3.1.jar :.
Linuxeksport CLASSPATH = $ CLASSPATH: $ GSON_HOME / gson-2.3.1.jar :.

Contoh Java Gson

Kami telah melihat cara untuk menyediakan persekitaran Java tempatan dan persekitaran Gson pada Windows anda, Linux , dan sistem pengendalian macOS. Sebaik sahaja anda menyediakan semua yang diperlukan untuk menjalankan kod Gson, anda sudah bersedia untuk melaksanakan sebarang aplikasi. Anda boleh mencuba satu contoh sendiri pada sistem anda.

Untuk mencuba contoh Gson di bawah, anda boleh menggunakan mana-mana salah satu editor Java yang popular, seperti Notepad , Netbeans , atau Gerhana . Notepad ialah salah satu editor teks biasa yang digunakan untuk menulis kod Java. Jika anda mempunyai sistem Windows, anda boleh menggunakan editor teks Notepad untuk menulis kod Java. Platform lain ialah Netbeans. Ia adalah Persekitaran Pembangunan Bersepadu (IDE) . Anda boleh memuat turun Netbeans pada sistem Windows, Linux, Solaris dan macOS anda. Satu lagi penyunting teks untuk Java ialah Eclipse. Pelayan Eclipse sebagai editor teks untuk berbilang bahasa pengaturcaraan. Anda boleh memuat turun Eclipse pada sistem Windows, Linux dan macOS.

Sebelum kita melihat contoh Gson, ingat untuk mencipta fail Java dengan nama 'GsonEmployee,' iaitu nama kelas Java. Kemudian, pastikan fail Java 'GsonEmployee' anda ada dalam C:>GSON_WORKSPACE. Simpan fail anda dalam direktori ini dengan sambungan .java.

Contoh:

|_+_|

Pengeluaran:

Ikuti langkah yang diberikan di bawah untuk menjalankan kod Gson di atas.

  1. Lengkapkan kod di atas menggunakan kata kunci ‘javac.’
|_+_|
  1. Selepas menyusun, jalankan kod menggunakan kata kunci 'java'.
|_+_|
  1. Keputusan kod Gson di atas akan dipaparkan jika tiada ralat dalam kod.
|_+_|

Berikut ialah panduan ringkas untuk anda tentang mencipta, mensiri dan menyahsiri objek Gson.

  • Pertama, anda perlu mencipta objek Gson yang boleh diguna semula menggunakan fungsi GsonBuilder().
|_+_|
  • Selepas mencipta objek Gson, anda perlu menyahsiri rentetan JSON kepada objek Java. Untuk tujuan ini, kami menggunakan fungsi fromJson(). Dalam fungsi ini, anda perlu lulus dua parameter, rentetan JSON, dan jenis objek.
|_+_|
  • Kemudian, anda perlu menyerikan objek Java ke rentetan JSON menggunakan fungsi toJson(). Fungsi ini hanya memerlukan satu parameter, objek.
|_+_|

Gson - Pensirian Objek

Siri objek Gson membayangkan membaca objek Java ke dalam dokumen JSON dan kemudian membaca dokumen JSON ke dalam objek Java. Beritahu kami bagaimana penyirian objek Gson berlaku dengan satu contoh. Mari kita ambil contoh Pekerja yang sama, seperti yang dibincangkan di atas. Kami memaparkan id, nama, umur dan jawatan Pekerja. Dalam contoh ini, kami akan menunjukkan hasil yang sama dan melihat siri objek Gson.

Begitu juga, anda perlu mencipta kelas bernama GsonEmployee, dan letakkan fail ini dalam C:>GSON_WORKSPACE. Ingat untuk menyimpan nama fail anda sebagai GsonEmployee.java.

Contoh

|_+_|

Pengeluaran:

Untuk melaksanakan kod di atas, anda perlu mengikuti langkah-langkah yang dinyatakan di atas.

  • Untuk menyusun kod, gunakan kata kunci 'javac'.
|_+_|
  • Setelah disusun, jalankan kod menggunakan kata kunci 'java'.
|_+_|
  • Hasil kod ini akan sama seperti di atas, memaparkan nama Pekerja, umur dan jawatan.
|_+_|

Kelas Gson

Kami telah melihat cara mensirikan objek Gson. Dalam istilah lain, kami telah membaca objek Java ke dalam rentetan JSON yang setara dan rentetan JSON ke dalam objek Java masing-masing. Sekarang, kita akan bergerak ke arah kelas Gson.

Gson ialah kelas utama dan penting pustaka Google Gson. Kelas Gson bertanggungjawab untuk menukar objek Java kepada rentetan JSON dan rentetan JSON ke dalam objek Java masing-masing. Untuk kelas Gson, anda perlu menggunakan fungsi GsonBuilder() dahulu, dan kemudian gunakan fungsi toJson(), dan fromJson() untuk membaca dan menulis rentetan JSON. Di bawah ialah sintaks pengisytiharan kelas untuk com.google.gson.Gson.

Sintaks:

|_+_|

Pembina Gson

Terdapat pembina Gson untuk digunakan dalam kod Java. Ia ditakrifkan sebagai, Gson(). Pembina Gson() mencipta objek Gson. Oleh kerana tiada parameter yang dihantar kepada Gson(), ia memerlukan konfigurasi lalai.

Kaedah Kelas Gson

Sekarang kita akan bergerak ke arah kaedah kelas Gson. Di bawah ialah beberapa kaedah kelas Gson yang berkesan dengan penerangannya.

    T fromJson(JsonElement json, Class classOfT):

Kaedah kelas Gson di atas menggunakan pokok parse tertentu untuk menyahsiri Json yang dibaca daripadanya ke dalam jenis objek tertentu.

    T fromJson(JsonElement json, Type typeOfT):

Kaedah kelas Gson ini juga digunakan untuk tujuan yang sama seperti kaedah di atas. Ia menggunakan bacaan Json dari pokok parse tertentu dan menukarnya kepada jenis objek yang setara.

    T fromJson(Reader json, Type typeOfT):

Kaedah kelas Gson di atas mengambil Json dibaca daripada pembaca tertentu dan menyahsirikannya ke dalam jenis objek tertentu.

    T fromJson(JsonReader reader, Type typeOfT):

Anda boleh menggunakan kaedah kelas Gson di atas untuk membaca rentetan atau nilai JSON seterusnya daripada pembaca tertentu. Selepas membaca, kaedah ini mengubah nilai JSON menjadi objek typeOfT.

    T fromJson(Reader json, Class classOfT):

Kaedah kelas Gson ini mengambil bacaan JSON daripada pembaca khusus dan menyahsirikannya ke dalam objek kelas yang ditentukan.

    TypeAdapter getDelegateAdapter (TypeAdapterFactory skipPast, jenis TypeToken):

Apabila anda memerlukan penyesuai jenis ganti untuk jenis tertentu, anda boleh menggunakan kaedah kelas Gson di atas.

    TypeAdapter getAdapter(Jenis kelas):

Kaedah kelas Gson ini digunakan untuk mendapatkan penyesuai jenis untuk jenis tertentu.

    T fromJson(String json, Class classOfT):

Apabila anda ingin menyahsiri mana-mana rentetan JSON ke dalam objek kelas tertentu, anda boleh menggunakan kaedah kelas Gson di atas.

    TypeAdapter getAdapter(Jenis TypeToken):

Jika anda ingin mendapatkan penyesuai jenis untuk jenis tertentu, ini sekali lagi satu kaedah Gson untuk digunakan.

    T fromJson(String json, Type typeOfT):

Kaedah kelas Gson di atas menukar rentetan JSON kepada objek jenis tertentu.

    void toJson(Object src, Apendable writer):

Untuk menyerikan objek Java tertentu ke dalam perwakilan JSON masing-masing, kaedah Gson di atas digunakan.

    void toJson(JsonElement jsonElement, penulis JsonWriter):

Kaedah kelas Gson di atas digunakan untuk menulis JSON kepada penulis untuk jsonElement.

    String toJson(JsonElement jsonElement):

Elemen JSON disusun dalam struktur seperti pokok. Apabila anda ingin mewakili elemen JSON ke dalam perwakilan yang setara, anda perlu menggunakan kaedah Gson di atas.

    Rentetan keJson(Objek src):

Kaedah di atas ialah kaedah Gson lain yang digunakan untuk menyerikan objek Java tertentu ke dalam rentetan atau perwakilan JSON masing-masing.

    void toJson(JsonElement jsonElement, Penulis boleh tambah):

Untuk semua JsonELEments dalam pokok, kaedah kelas Gson di atas menulis JSON yang setara dengannya.

    void toJson(Object src, Type typeOfSrc, Apendable writer):

Kaedah Gson ini digunakan untuk mensiri objek tertentu ke dalam rentetan JSON masing-masing. Ia juga menyerikan objek jenis generik.

    JsonElement toJsonTree(Objek src):

Kaedah Gson di atas menukar objek Java tertentu kepada nilai JSON masing-masing. Ia mewakili nilai JSON dalam pokok JsonElements.

    String toJson(Objek src, Jenis typeOfSrc):

Sekali lagi, kaedah di atas ialah satu kaedah dalam kelas Gson, yang menukar objek Java tertentu, termasuk semua jenis generik, kepada nilai JSON masing-masing.

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

Kaedah Gson ini digunakan untuk menulis src jenis typeOfSrc ke dalam perwakilan JSONnya kepada penulis.

    JsonElement toJsonTree(Objek src, Jenis typeOfSrc):

Kaedah di atas menukar objek Java tertentu, termasuk semua jenis generik, ke dalam perwakilan JSON tertentu. Ia mewakili nilai JSON dalam pokok JsonElements.

Kelas Gson mewarisi semua kaedah di atas daripada kelas java.lang.Object. Mari kita lihat satu contoh paparan ID pekerja, Nama, Umur dan Jawatan. Pastikan anda menggunakan nama kelas yang sama dengan nama fail anda. Pertimbangkan bahawa kami menyimpan fail Java kami di C:/>GSON_WORKSPACE. Dalam contoh yang dinyatakan di bawah, nama fail ialah GsonEmployee2.java.

Contoh:

|_+_|

Pengeluaran:

Selepas menulis kod Java dan menyimpannya dengan nama yang serupa dengan nama kelas, anda perlu menyusunnya. Gunakan arahan di bawah untuk menyusun.

|_+_|

Fail java, GsonEmployee2.java, akan disusun.

Selepas penyusunan, anda telah menjalankannya menggunakan arahan di bawah.

|_+_|

Output akan dipaparkan seperti berikut:

|_+_|

Pengikatan Data dalam Gson

Kami telah melihat tiga bentuk pemprosesan JSON yang berbeza yang disediakan oleh Gson. Salah satu borang pemprosesan JSON dalam Gson ialah Data Binding. Menggunakan borang pemprosesan mengikat data, anda boleh menukar JSON kepada Plain Old Java Object (POJO) dan POJO kepada JSON. Penukaran antara JSON dan POJO berlaku menggunakan pengakses harta atau anotasi. Anotasi pengakses harta adalah daripada dua jenis berbeza, Pengikatan Data Primitif dan Pengikatan Data Objek.

Pengikatan Data Primitif: Aksesori atau anotasi sifat ini mengubah JSON kepada objek pelbagai jenis data Java, seperti Peta, Rentetan, Boolean, Senarai dan Null. Ia juga menukar semua jenis data objek yang disebutkan ini kepada JSON.

Pengikatan Data Objek: Pengikatan data objek menukar sebarang nilai JSON kepada jenis JAVA dan sebaliknya.

Pendekatan pengikatan data pemprosesan JSON adalah serupa dengan penghuraian JAXB XML. Gson boleh membaca dan menulis nilai JSON dalam mana-mana dua jenis pengikatan data di atas. Mari kita kaji setiap jenis pengikatan data secara terperinci di bawah.

Pengikatan Data Primitif

Pendekatan Pengikatan Data Primitif untuk memproses JSON menukar nilai JSON kepada mana-mana jenis data Java. Dalam pendekatan mengikat data, Gson menawarkan beberapa penyesuai terbina dalam. Penyesuai ini digunakan untuk mensiri dan menyahsiri jenis data primitif. Marilah kita memahami kaedah pengikatan data primitif Gson untuk memproses JSON menggunakan satu contoh.

Di bawah ialah contoh yang menunjukkan penukaran antara JSON dan jenis data primitif Java. Anda perlu ingat bahawa nama fail anda harus sama dengan nama kelas. Simpan fail anda dalam C:>GSON_WORKSPACE. Dalam contoh di bawah, nama fail ialah GsonEmployee3.java.

Contoh:

|_+_|

Pengeluaran:

Pertama, anda perlu menyusun kod di atas menggunakan arahan di bawah.

|_+_|

Selepas menyusun, anda perlu menjalankan kod menggunakan arahan di bawah.

|_+_|

Output berikut akan dipaparkan.

|_+_|

Di sini, anda boleh melihat dengan jelas perbezaan antara output yang dijana selepas bersiri dan menyahsiri menggunakan pendekatan mengikat data primitif.

Pengikatan Data Objek

Sekarang, kita akan bergerak ke arah pendekatan Pengikat Data Objek Gson untuk memproses JSON. Pendekatan ini memetakan nilai JSON kepada mana-mana jenis JAVA dan mana-mana objek Java kepada perwakilan JSON masing-masing. Proses Pengikatan Data Objek dijelaskan di bawah:

  1. Pertama, anda perlu mencipta contoh Gson menggunakan kaedah Gson().
|_+_|
  1. Sekarang, tukar objek Java kepada nilai JSON. Pertimbangkan objek Java sebagai emp untuk kelas, Employee.
|_+_|
  1. Akhir sekali, tukar nilai atau rentetan JSON ke objek Java masing-masing. Pertimbangkan kelas Pekerja dan ambil objek sebagai emp1.
|_+_|

Menggunakan langkah di atas ini, kami akan melaksanakan satu contoh mudah pendekatan pengikat data objek. Kami akan menggunakan nama kelas sebagai GsonEmployee4. Oleh itu, nama fail hendaklah disimpan sebagai GsonEmployee4.java. Dalam contoh ini, kami akan memaparkan maklumat pekerja yang mengandungi nama, id, jawatan, umur dan bandar.

Contoh:

|_+_|

Pengeluaran:

Sekarang, anda perlu menyusun kod anda. Ikuti arahan di bawah untuk menyusun.

|_+_|

Jalankan kod anda menggunakan arahan,

|_+_|

Anda akan mendapat output berikut:

|_+_|

Di sini, kami telah melihat pendekatan Pengikatan Data Gson untuk memproses JSON dengan contoh. Mari kita lihat satu lagi pendekatan pemprosesan JSON.

API penstriman dalam Gson

API Penstriman ialah satu lagi bentuk Gson untuk memproses JSON. Dalam pendekatan API Penstriman, nilai JSON dibaca dan ditulis sebagai token. Pendekatan ini menganggap setiap nilai JSON sebagai peristiwa diskret. Di sini, JsonReader membaca data JSON, dan JsonWriter menulis data Json sebagai token. Oleh itu, ia dikenali sebagai JsonToken.

API Penstriman sangat terkenal kerana memantau setiap data JSON dengan teliti. Dalam artikel ini, kita akan melihat membaca data JSON menggunakan kaedah API Penstriman. Proses membaca untuk data JSON berlaku seperti berikut:

  • Memandangkan kami menumpukan pada membaca data JSON, kami akan menggunakan fungsi JsonReader(). Pertama, anda perlu menjana objek fungsi JsonReader() dan menghantar objek ini ke teks JSON.
|_+_|

Di sini, 'jsread' ialah objek fungsi JsonReader().

  • Selepas mencipta objek, mulakan membaca teks JSON dengan objek itu dan dapatkan token.
|_+_|
  • Akhir sekali, anda perlu menyemak jenis token yang anda dapat selepas membaca teks JSON.
|_+_|

Kita akan melihat satu contoh JsonReader. Ambil nama kelas sebagai EmployeeRead. Pastikan anda menyimpan nama fail sebagai EmployeeRead.java dalam C:

Contoh:

|_+_|

Pengeluaran:

Untuk menyusun kod di atas, taip arahan seperti berikut,

|_+_|

Selepas menyusun, jalankan program menggunakan baris kod di bawah,

|_+_|

Outputnya adalah seperti berikut:

|_+_|

Ini semua tentang pendekatan API Penstriman untuk memproses JSON. Sekarang, mari kita beralih ke bentuk akhir, Model Pokok.

Model Pokok di Gson

Pendekatan terakhir dalam memproses JSON yang ditawarkan oleh Gson ialah Model Pokok. Seperti namanya, ia mewakili dokumen JSON dalam struktur seperti pokok. Struktur seperti pokok ini melibatkan nod JsonObject. Model Pokok adalah serupa dengan penghurai DOM XML. Sekarang mari kita lihat cara membuat pokok dan cara melintasi pokok itu.

Bagaimana untuk membuat pokok daripada dokumen JSON?

Untuk mencipta pepohon daripada dokumen JSON, kami akan menggunakan kaedah JsonParser(). Kaedah JsonParser() mempunyai penuding dengannya, yang membaca dokumen JSON dan menunjuk ke akar pokok. Menggunakan nod akar tunggal, kita boleh melintasi seluruh pokok. Berikut ialah kod kecil yang akan membantu anda dalam membuat pepohon daripada data JSON.

Ikuti langkah di bawah untuk membuat pepohon daripada data JSON:

  • Kaedah JsonParser() digunakan untuk mencipta pokok. Langkah pertama ialah membuat contoh atau objek kaedah JsonParser().
|_+_|

Di sini, 'jsparser' ialah objek kaedah JsonParser().

  • Langkah seterusnya ialah untuk menentukan rentetan atau data JSON yang anda mahu gambarkan dalam struktur seperti pokok.
|_+_|
  • Langkah terakhir ialah mencipta pepohon daripada data yang dinyatakan di atas.
|_+_|

Bagaimana untuk melintasi pokok?

Kami telah melihat cara membuat pepohon daripada data JSON. Sekarang, kita akan memerhatikan cara melintasi pokok yang direka bentuk daripada dokumen JSON. Untuk melintasi pokok, anda perlu melihat setiap laluan nod dari nod tertentu ke nod akar. Berikut ialah kod kecil untuk anda membimbing tentang melintasi pokok.

|_+_|

Ini adalah contoh yang lebih mudah untuk melintasi pokok itu. Sekarang, kita akan mempunyai satu contoh untuk mencipta dan melintasi pepohon daripada data jSON. Kami akan mencipta nama kelas sebagai GsonTree. Oleh itu, pastikan anda menyimpan fail dengan nama, GsonTree.java, dalam C:>Gson_WORKSPACE.

Contoh:

|_+_|

Pengeluaran:

Untuk menyusun atur cara di atas, gunakan arahan di bawah,

|_+_|

Selepas menyusun, anda perlu menjalankan menggunakan kod di bawah,

|_+_|

Output akan dipaparkan seperti berikut:

|_+_|

Kami telah melihat ketiga-tiga borang pemprosesan JSON yang ditawarkan oleh Gson dengan contoh masing-masing. Mari kita laksanakan beberapa contoh bersiri dan penyahserikatan dalam Gson.

Contoh Serialisasi dan Deserialisasi dalam Gson

Bahagian ini akan memberikan anda beberapa contoh bersiri dan penyahserilan yang mudah dan mudah dalam Gson. Kami akan melihat contoh Array, Koleksi dan Jenis Generik.

Contoh Array dalam Gson

Kami akan membentangkan di sini kod kecil untuk pemahaman yang lebih baik tentang pensirilan tatasusunan dan penyahserilan.

|_+_|

Sekarang, kami akan melaksanakan kod lengkap, yang akan membuat anda memahami siri tatasusunan dan penyahserikatan. Kami akan mencipta kelas GsonColor. Pastikan anda menyimpan fail Java anda, bernama GsonColor.java, dalam C:>GSON_WORKSPACE.

Contoh:

|_+_|

Pengeluaran:

Untuk menyusun kod di atas, taip arahan di bawah,

|_+_|

Jalankan kod di atas menggunakan arahan seperti berikut,

|_+_|

Output akan dipaparkan sebagai:

|_+_|

Contoh generik dalam Gson

Di Gson, terdapat API refleksi Java. API ini berguna dalam mengenal pasti jenis objek yang mana rentetan atau nilai JSON dipetakan. Apabila anda menggunakan generik dalam Gson, nilai JSON yang diwakili dalam jenis objek masing-masing tidak tersedia dalam siri. Oleh itu, untuk mengatasi isu ini dalam generik Gson, terdapat kelas, com.google.gson.reflect.TypeToken. Fungsi utama kelas ini adalah untuk memegang objek generik.

Kami akan mempunyai satu contoh jenis generik di bawah. Mari kita cipta kelas, GsonGenerics. Pastikan anda menyimpan fail program Java dalam C:>GSON_WORKSPACE dengan nama GsonGenerics.java

Contoh

|_+_|

Pengeluaran

Susun kod di atas menggunakan arahan

|_+_|

Jalankan kod menggunakan arahan di bawah

|_+_|

Program di atas apabila dilaksanakan akan menghasilkan output berikut.

|_+_|

Contoh Koleksi dalam Gson

Contoh koleksi dalam Gson termasuk kaedah ArrayList(). Berikut ialah kunci kod kecil untuk anda memahami contoh koleksi bersiri dan penyahsirilan dalam Gson.

|_+_|

Ini adalah kod kecil. Sekarang mari kita lihat beberapa baris kod yang lebih besar yang mewakili penyirian dan penyahserikatan koleksi dalam Gson. Buat kelas GsonCollection dan simpan fail program Java dengan nama, GsonCollection.java. Simpan fail dalam C:>GSON_WORKSPACE.

Contoh

|_+_|

Pengeluaran

Susun fail menggunakan arahan di bawah,

|_+_|

Jalankan fail di atas dengan menaip kemudian arahan berikut pada command prompt,

|_+_|

Berikut ialah hasil program koleksi di atas di Gson.

|_+_|

Kesimpulan

Gson ialah kit alat, yang membolehkan anda menukar rentetan atau nilai JSON ke dalam objek Java masing-masing dan objek Java ke rentetan atau nilai JSON yang setara. Gson menawarkan tiga pendekatan pemprosesan yang berbeza untuk JSON.

  • Pengikatan Data menukar nilai JSON kepada POJO dan POJO kepada nilai JSON masing-masing.
  • Pendekatan API Penstriman menggunakan JsonReader dan JsonWriter untuk membaca dan menulis data JSON sebagai token.
  • Kaedah model pokok mewakili dokumen JSON ke dalam struktur seperti pokok.

Kami telah melihat cara untuk menyediakan pembolehubah persekitaran untuk Gson. Selepas menyediakan pembolehubah persekitaran Gson, anda menjalankan kod Gson. Seterusnya, anda boleh melihat contoh siri objek. Dalam siri objek, dokumen JSON dibaca ke dalam objek Java, dan objek Java dibaca ke dalam dokumen JSON masing-masing.

Seterusnya, kita telah melihat program Gson yang mudah dan kaedah kelas Gson. Setiap pendekatan pemprosesan JSON, Pengikatan Data, Model Pokok dan API Penstriman dijelaskan dengan satu contoh setiap satu. Kemudian, kami telah membincangkan contoh bersiri dan penyahserikatan dalam Gson. Kami melaksanakan contoh tatasusunan, contoh jenis generik dan contoh koleksi.