Skip to content

Latest commit

 

History

History
15 lines (11 loc) · 671 Bytes

File metadata and controls

15 lines (11 loc) · 671 Bytes

Generics + GSON 사용시 리스트 타입 변환

Issue

Pageable로 받아오는 데이터가 대부분이었는데. 클래스를 하나 작성하 재사용하기 위해 Generics를 사용하던 중 다음과 같은 이슈가 발생하였다. Kotlin에서 Generics (<*>, <Any>)를 사용했을 때 Gson으로 변환하여 클래스에 매핑하려고 하면 'com.google.gson.internal.LinkedTreeMap' 이슈가 발생한다.
(Java에서는 <?>를 사용했을 때 동일한 이슈가 발생함)

Solution

  val type = object : TypeToken<List<클래스>>() {}.type
  val className = Gson().fromJson<List<클래스>>(json... , type)