Gson: 객체 직렬화, 역직렬화

sumi Yoo·2022년 9월 29일
0

Gson?

Json 형식을 Java 객체로 변환시켜주고, 반대로 Java 객체를 Json 형식으로 변환시켜 주기도 하는 자바 라이브러리이다.

gradle

dependencies {
	implementation 'com.google.code.gson:gson:2.8.6'
}

객체 -> JSON

class Box(var name: String, var index: Int)

fun main() {
    val box = Box("sumi", 1)
    val box2 = Box("sumi2", 2)

    val gson = Gson()

    val json = gson.toJson(box)
    println(json)
    val json2 = gson.toJson(box2)
    println(json2)
}

JSON -> 객체

class Box(var name: String, var index: Int)

fun main() {
    val box = Box("sumi", 1)
    val box2 = Box("sumi2", 2)

    val gson = Gson()

    val json = gson.toJson(box)
    val json2 = gson.toJson(box2)

    val newBox = gson.fromJson(json, Box::class.java)
    val newBox2 = gson.fromJson(json2, Box::class.java)
}

문자열 JSON을 파싱하기

class Box(var name: String, var index: Int)

fun main() {
    val box = Box("sumi", 1)
    val box2 = Box("sumi2", 2)

    val gson = Gson()

    val json = gson.toJson(box)
    val json2 = gson.toJson(box2)
    println(json)
    val jsonObject = JSONObject(json)
    val name = jsonObject.getString("name")
    println(name)
}

{"name":"sumi","index":1}
sumi

참고자료
JsonObject

0개의 댓글

관련 채용 정보