Mam taką klasę Java POJO:
class Topic {
@SerializedName("id")
long id;
@SerializedName("name")
String name;
}
i mam taką klasę danych Kotlin
data class Topic(val id: Long, val name: String)
Jak nadać json key
dowolne zmienne kotlin data class
podobne @SerializedName
adnotacje w zmiennych java?
Odpowiedzi:
Klasa danych:
do JSON:
z JSON:
źródło
Na podstawie odpowiedzi Antona Golovina
Detale
Rozwiązanie
Stosowanie
Klasa danych
Z JSON
Do JSON
źródło
SerializedName
adnotacji zamiast strategii nazewnictwa pól, Wasilij?@SerializedName
pozwoli mi użyć niestandardowych nazw zmiennych, które mogą nie pasować do klucza json. I tak, nie możesz go używać,@SerializedName
jeśli go nie potrzebujesz.Możesz użyć podobnego w klasie Kotlin
A także w przypadku klasy zagnieżdżonej możesz użyć tego samego, co w przypadku zagnieżdżonego obiektu. Po prostu podaj nazwę Serialize dla klasy.
więc jeśli otrzymasz odpowiedź z serwera, każdy klucz będzie mapowany z JOSN.
Alos, przekonwertuj List do JSON:
ndroid konwertuje z JSON na Object:
źródło