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를 변화할 수 있다