Escriu per cercar…

Fonaments

La serialització ens permet transformar unes dades en un "string".

Introducció

La serialització de dades no és tan fàcil com pot semblar al principi, perquè la majoria de les dades que consumim o produïm no s’ajusten exactament a la definició de les nostres classes.

Projecte: https://gitlab.com/xtec/kotlin/serialization

Entorn de treball

Crea un projecte serial amb Amper.

Kotlin Serialization és la biblioteca oficial multiplataforma i multiformat de serialització per a Kotlin.

Si necessites (de)serialitzar classes Kotlin des de/cap a JSON, pots habilitar Kotlin Serialization en la seva forma més simple:

yaml
settings:
  kotlin:
    serialization: json  # JSON or other format

Aquest fragment configura el compilador per processar classes @Serializable, i afegeix dependències al temps d’execució de serialització i a les biblioteques de format JSON.

També pots personalitzar la versió de les biblioteques de Kotlin Serialization utilitzant la forma completa de la configuració:

yaml
settings:
  kotlin:
    serialization:
      format: json
      version: 1.7.3

Modifica el fitxer module.yaml:

yaml
module.yaml
product: jvm/app
settings:
  kotlin:
    serialization: json

Serialitzar

En la nostra aplicació la informació està objectes Data.

Per guardar una dada primer l’has de convertir en un String.

La manera més habitual és convertir una dada a JSON

Has d’anotar la data class com @Serializable perquè el “plugin” de serialitzador del compilador generi el mètode serializer().

El mètode serializer() descompon l’objecte en un conjunt de valor primitius:

kotlin
import kotlinx.serialization.*

@Serializable
data class Person(val name: String, val married: Boolean)

fun main() {
    println(Person.serializer().descriptor)
}

Estàs llegint una vista prèvia.

Inicia sessió per llegir l'article complet. Qualsevol compte obre 4 articles gratuïts al mes; l'alumnat i el professorat llegeixen les pàgines del seu curs sense límit.

Inicia sessió