Junior
Kako raditi sa JSON u Kotlinu?
sobes.tech АИ
Одговор од АИ
У Kotlin-у, рад са JSON-ом обично се извршава коришћењем библиотека трећих страна. Најпопуларније:
- Jackson: Моћан и флексибилан.
- Gson: Једноставан за коришћење, од Google-а.
- kotlinx.serialization: Нативна серијализација/десеријализација Kotlin-а.
Пример коришћења kotlinx.serialization:
-
Додајте зависности у
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") } -
Направите data class за моделовање JSON структуре:
// Data class за десериализацију JSON import kotlinx.serialization.Serializable @Serializable // Анотација за серијализацију/десеријализацију data class User( val name: String, val age: Int ) -
Десериализујте JSON низ у објекат:
// Десериализација JSON низа import kotlinx.serialization.json.Json val jsonString = """{"name":"Alice","age":30}""" val user = Json.decodeFromString<User>(jsonString) // user.name ће бити "Alice", user.age ће бити 30 -
Сериализујте објекат у JSON низ:
// Сериализација објекта у JSON низ import kotlinx.serialization.json.Json val userToSerialize = User("Bob", 25) val jsonOutput = Json.encodeToString(userToSerialize) // jsonOutput ће бити {"name":"Bob","age":25}
Избор библиотеке зависи од захтева пројекта KMP (Kotlin Multiplatform), перформанси и корисничке погодности. kotlinx.serialization је преферирани избор за KMP пројекте због своје нативности.