[Kotlin] ObjectMapper

Jackson에서 제공하는 ObjectMapper의 경우 java를 토대로 개발되어 kotlin에서 사용할 경우 data class를 변화하기 위해 약간의 설정이 필요하다

implementation("com.fasterxml.jackson.module:jackson-module-kotlin")

일단 의존성을 먼저 추가해주고

objectMapper.registerModule(
            KotlinModule.Builder()
                .configure(KotlinFeature.NullToEmptyCollection, false)
                .configure(KotlinFeature.NullToEmptyMap, false)
                .configure(KotlinFeature.NullIsSameAsDefault, false)
                .configure(KotlinFeature.SingletonSupport, false)
                .configure(KotlinFeature.StrictNullChecks, false)
                .build())

이렇게 kotlin모듈을 생성하여 추가해주거나

val mapper1 = ObjectMapper().registerModule(KotlinModule())  
val mapper2 = jacksonObjectMapper()  
val mapper3 = ObjectMapper().registerKotlinModule()

이렇게 기본적인 세팅이 된 상태로 생성하면 data class를 변화할 수 있다

Leave a Comment