2019.05.23 오늘의 구글링
-
2019 May 23
오늘의 구글링
Kotlin + Mybatis : argument mismatch issue
- 문제점 : kotlin data class로 만든 entity class를 mybatis mapper의 javaType으로 사용하면 argument mismatch가 발생한다.
- 원인
- 해당 class의 resultMap이 association을 가지고 있으면 발생한다.
- 해결
- data class에 no arguments constructor를 생성하면 해결된다.
- googling을 해서 찾은 거는 아니고 row 정보로 resultmap constructor를 찾을 때 nested map이 존재하는 경우 no args constructor를 호출하는 부분이 있는 것을 보고 위처럼 해보니 동작함.
- 시간이 급하여 (no args constructor를 사용하는 이유)[[https://github.com/mybatis/mybatis-3/issues/101]]는 차차 다시 확인해보자
- 이유는 연속된 nested 객체가 계속 constructor를 사용하게되면 resultmap 객체 생성시 메모리 이슈가 발생한다는 것
- https://github.com/mybatis/mybatis-3/issues/1382 이것도 참고.
|