Sobes.tech
Junior

Ako pracovať s JSON v Kotlin?

sobes.tech AI

Odpoveď od AI

V Kotlinu sa spracovaním JSON sa zvyčajne používa knižnica tretích strán. Najpopulárnejšie:

  1. Jackson: Výkonný a flexibilný.
  2. Gson: Jednoduché na použitie, od Google.
  3. kotlinx.serialization: Nativna serializácia/deserializácia Kotlinu.

Príklad použitia kotlinx.serialization:

  1. Pridajte závislosti do build.gradle.kts:

    // build.gradle.kts
    plugins {
        kotlin("jvm") version "1.9.22"
        kotlin("plugin.serialization") version "1.9.22"
    }
    
    repositories {
        mavenCentral()
    }
    
    dependencies {
        implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.0")
    }
    
  2. Vytvorte data class na modelovanie štruktúry JSON:

    // Data class pre deserializáciu JSON
    import kotlinx.serialization.Serializable
    
    @Serializable // Anotácia pre serializáciu/deserializáciu
    data class User(
        val name: String,
        val age: Int
    )
    
  3. Deserializujte JSON reťazec na objekt:

    // Deserializácia JSON reťazca
    import kotlinx.serialization.json.Json
    
    val jsonString = """{"name":"Alice","age":30}"""
    val user = Json.decodeFromString<User>(jsonString)
    
    // user.name bude "Alice", user.age bude 30
    
  4. Serializujte objekt do JSON reťazca:

    // Serializácia objektu do JSON reťazca
    import kotlinx.serialization.json.Json
    
    val userToSerialize = User("Bob", 25)
    val jsonOutput = Json.encodeToString(userToSerialize)
    
    // jsonOutput bude {"name":"Bob","age":25}
    

Výber knižnice závisí od požiadaviek projektu KMP (Kotlin Multiplatform), výkonu a používateľskej prívetivosti. kotlinx.serialization je preferovaná voľba pre KMP projekty vďaka svojej nativnosti.