Pretvaranje Kotlin klase podataka iz JSON-a pomoću GSON-a
1. Pregled
U ovom kratkom vodiču razgovarat ćemo o tome kako pretvoriti a klasa podataka u Kotlinu u JSON string i obrnuto koristeći Gson Java knjižnicu.
2. Ovisnost Mavena
Prije nego što započnemo, dodajmo Gson na naš pom.xml:
com.google.code.gson gson 2.8.5
3. Kotlin Klasa podataka
Prije svega, izradimo a klasa podataka koji ćemo pretvoriti u JSON niz u kasnijim dijelovima članka:
podatkovna klasa TestModel (val id: Int, val opis: String)
The TestModel razred se sastoji od 2 atributa: iskaznica i Ime. Stoga bi JSON niz koji očekujemo od Gsona izgledao ovako:
{"id": 1, "description": "Test"}
4. Pretvaranje iz Klasa podataka u JSON String
Sada možemo koristiti Gson za pretvoriti predmete od TestModel razreda u JSON:
var gson = Gson () var jsonString = gson.toJson (TestModel (1, "Test")) Assert.assertEquals (jsonString, "" "{" id ": 1," description ":" Test "}" "" ")
U ovom primjeru koristimo Tvrditi kako bismo provjerili odgovara li izlaz s Gsona našoj očekivanoj vrijednosti.
5. Pretvaranje iz JSON Stringa u a Klasa podataka
Naravno, ponekad moramo pretvoriti iz JSON-a u podatkovne objekte:
var jsonString = "" "{" id ": 1," description ":" Test "}" ""; var testModel = gson.fromJson (jsonString, TestModel :: class.java) Assert.assertEquals (testModel.id, 1) Assert.assertEquals (testModel.description, "Test")
Ovdje pretvaramo JSON niz u TestModel prigovoriti govoreći Gsonu da se koristi TestModel :: class.java kao Gson je Java knjižnica i prihvaća samo Java klasu.
Na kraju testiramo sadrži li objekt rezultata ispravne vrijednosti u izvornom nizu.
6. Zaključak
U ovom kratkom članku razgovarali smo o tome kako koristiti Gson u Kotlinu za pretvaranje Kotlina klasa podataka na JSON niz i obrnuto.
Svi primjeri, kao i uvijek, mogu se naći na GitHubu.