Willkommen zurück.
In diesem Video erfahren wir etwas über nachrüstbare Json-Konverter. Nachrüstbare Json-Konverter wie Json und Mochi
spielen eine entscheidende Rolle bei der Erstellung von Http-Anfragen und der Verarbeitung von Json-Antworten in Android-Anwendungen.
Der Hauptzweck der Verwendung solcher Konverter ist die automatische Serialisierung und Deserialisierung.
Erfahren Sie mehr über die Serialisierung und Deserialisierung der Serialisierung.
Wenn Sie Daten an eine Web-API senden, müssen Sie häufig komplexe Datenstrukturen wie Objekte oder Listen in das Json-Format
konvertieren.
Json-Konverter wie Json oder mochi.
Automatisieren Sie diesen Prozess, indem Sie native Kotlin- oder Java-Objekte direkt als Anfragekörper übergeben.
Retrofit wandelt diese Objekte automatisch in Json um, bevor es diese Anfragen zur Serialisierung sendet.
Wenn Sie Json-Antworten von der API erhalten, müssen Sie die Json-Daten parsen und in Ihrer Anwendung in verwendbare
Objekte umwandeln.
Json-Konverter übernehmen diesen Prozess, indem sie Json-Daten auf entsprechende Kotlin- oder Java-Objekte abbilden, was den Prozess wesentlich
einfacher und weniger fehleranfällig macht.
Um hinzuzufügen, werden die Json-Nachrüstungskonverter auf den Platz Github zurückgehen. io Schrägstrich Retrofit und klicken Sie auf Download scrollen
Sie nach oben und Sie können sehen, dies sind die Konverter.
Ich kopiere diese Abhängigkeit und gehe zum Projekt Build. gradle Und hier fügen Sie die Implementierung innerhalb dieser Klammern ein und hier
muss ich die genaue Version von retrofit 2 angeben. 9. 0 sinken jetzt und Glückwunsch.
Wir haben den Json-Konverter zu unserer Nachrüstungsbibliothek hinzugefügt.
Jetzt können wir es hier in der Ergebnismodellklasse verwenden und erfahren, warum wir es zum Serialisieren und Deserialisieren von Objekten verwenden
müssen.
Ich beginne mit dem ersten Objekt, und übrigens verwende ich hier Integer als Objekt, nicht als primitive
Daten.
Ich beginne mit der Annotation serialisierter Namen und füge expose hinzu.
Diese Anmerkungen stammen aus der Json-Bibliothek.
Diese Annotationen werden verwendet, um die Serialisierung und Deserialisierung von Json-Daten anzupassen, wenn Sie mit Json als Json-Konverter
arbeiten. Diese Annotationen ermöglichen es Ihnen, das Mapping zwischen Ihren Kotlin- oder Java-Objekten und den Json-Schlüsseln
in der API-Antwort zu steuern, der serialisierte Name ist eine Annotation, die von Json und Retrofit bereitgestellt wird.
Es wird verwendet, um den Namen des Json-Schlüssels anzugeben und entspricht einem bestimmten Feld oder einer Eigenschaft in Ihrer Kotlin-
oder Java-Klasse.
Diese Annotation ist besonders nützlich, wenn die Variablennamen in Ihrer Klasse von den Json-Schlüsseln in der API-Antwort
abweichen.
Es ermöglicht Ihnen, explizit zuzuordnen Klasse Eigenschaften zu Json-Schlüssel, indem Sie serialisierten Namen hinzufügen, können Sie sicherstellen,
dass die Json korrekt mit den Json-Schlüssel mit der entsprechenden Klasse Eigenschaft während der Serialisierung assoziiert.
Wenn Sie hier den genauen Namen des Feldes Seite genau wie in der Antwort als in der Json-Antwort verwenden.
Es besteht also keine Notwendigkeit, diese Anmerkung zu verwenden, aber wenn Sie einen Feldnamen verwenden, der sich von dem der Antwort unterscheidet,
können wir ihn verwenden.
So unterscheidet sich z. B. der Seitenname oder die Seitennummer von diesem Feld in der Antwort.
Daher werde ich dieses Feld in der Antwort auf dieses Feld in der Objektklasse abbilden, indem ich die Annotation add serialized
name verwende, und hier muss ich den Namen des Feldes in der Antwort genau wie die Antwort angeben.
Die Seite ist also ähnlich wie in der Antwort, hier mappe ich, ich sage, dass das Seitennummernfeld dem
Seitenfeld in der Antwort entspricht, wenn Sie es als Feld in der Antwort benennen.
Es besteht also keine Notwendigkeit, eine Annotation mit serialisiertem Namen zu verwenden, aber ich bevorzuge die Verwendung einer Annotation mit serialisiertem
Namen, um die korrekte Zuordnung zu gewährleisten.
Die Annotation expose ist eine von Json bereitgestellte Annotation, die jedoch nicht direkt von Retrofit verwendet wird.
Es wird verwendet, um anzugeben, welche Felder bei der Serialisierung und Deserialisierung von Json-Objekten standardmäßig ein- oder ausgeschlossen
werden sollen.
Json umfasst alle Felder bei der Serialisierung und Deserialisierung.
Wenn Sie jedoch ein Feld mit einer expose-Anmerkung versehen, steuern Sie mit Json, ob dieses Feld einbezogen
oder ausgeschlossen wird.
Json builder und schließen Felder ohne expose annotation Methode aus.
Diese Anmerkung wird häufig aus Sicherheits- oder Datenschutzgründen verwendet, um zu verhindern, dass bestimmte Felder in die Json-Ausgabe
aufgenommen oder von der Serialisierung ausgeschlossen werden.
In diesem Beispiel schließe ich diese Seite in die Serialisierung oder Deserialisierung ein.
Gehen wir also zu den anderen Feldern über, und hier füge ich den serialisierten Namen und die Gesamtzahl der Seiten hinzu.
Lassen Sie uns die Antwort aufrufen und ich werde sie hierher kopieren.
Die Gesamtseiten können Sie sehen, und ich kopiere sie und füge sie ein, weil Groß- und Kleinschreibung zu beachten sind und Gesamtseiten nicht
gleich Gesamtseiten sind.
Ich sollte also die Annotation serialized name verwenden.
Außerdem werde ich Exposé verwenden.
Das dritte Feld ist dann der serialisierte Name und die Gesamtergebnisse, die ich kopiere.
Gehen Sie hierher.
Die Gesamtergebnisse werden aufgedeckt und das letzte Feld lautet.
Ergebnisse.
Kopieren Sie es und fügen Sie die Freilegung hinzu.
In diesem Video lernen wir also die Konverter kennen und erfahren, wie diese Anmerkungen funktionieren und warum wir sie verwenden.
Und wir haben etwas über Serialisierung und Deserialisierung gelernt.