המרת מחלקת נתונים Kotlin מ- JSON באמצעות GSON
1. סקירה כללית
במדריך קצר זה נדון כיצד להמיר א מחלקת נתונים במיתר Kotlin ל- JSON ולהיפך באמצעות ספריית ג'אווה ג'אווה.
2. תלות של Maven
לפני שנתחיל, בואו נוסיף את Gson ל- שלנו pom.xml:
com.google.code.gson gson 2.8.5
3. קוטלין מחלקת נתונים
קודם כל, בואו ניצור a מחלקת נתונים אותו נמיר למחרוזת JSON בחלקים המאוחרים של המאמר:
מחלקת נתונים TestModel (val id: Int, תיאור val: String)
ה TestModel הכיתה מורכבת משתי תכונות: תְעוּדַת זֶהוּת ו שֵׁם. לכן מחרוזת JSON לה אנו מצפים מגסון תיראה כך:
{"id": 1, "description": "Test"}
4. המרה מ מחלקת נתונים למחרוזת JSON
עכשיו, אנחנו יכולים להשתמש ב- Gson כדי להמיר אובייקטים של TestModel בכיתה ל- JSON:
var gson = Gson () var jsonString = gson.toJson (TestModel (1, "Test")) Assert.assertEquals (jsonString, "" "{" id ": 1," description ":" Test "}" "")
בדוגמה זו אנו משתמשים לִטעוֹן כדי לבדוק אם הפלט של Gson תואם לערך הצפוי שלנו.
5. המרה ממחרוזת JSON לא מחלקת נתונים
כמובן שלפעמים אנחנו צריכים להמיר מ JSON לאובייקטים נתונים:
var jsonString = "" "{" id ": 1," description ":" Test "}" ""; var testModel = gson.fromJson (jsonString, TestModel :: class.java) Assert.assertEquals (testModel.id, 1) Assert.assertEquals (testModel.description, "Test")
הנה, אנו ממירים את מחרוזת JSON ל- a TestModel התנגד בכך שהוא אמר לגסון להשתמש TestModel :: class.java כפי ש Gson היא ספריית Java ומקבלת רק מחלקת Java.
לבסוף, אנו בודקים אם אובייקט התוצאה מכיל את הערכים הנכונים במחרוזת המקורית.
6. מסקנה
במאמר מהיר זה דנו כיצד להשתמש ב- Gson בקוטלין להמרת קוטלין מחלקת נתונים למחרוזת JSON ולהיפך.
את כל הדוגמאות, כמו תמיד, ניתן למצוא באתר GitHub.