HTTP 200 OK

Memento mori & Carpe diem

Jackson 2

JSON 직렬화가 왜 안돼?..

개요A서버에서 B서버로 body를 전달해주는 테스트를 하던 도중 필드 하나가 미전달 되는 현상이 지속적으로 발생했습니다. 해당 이슈를 해결하기 위해 다방면으로 고민했던 과정과 해결방안을 작성했습니다. 해결과정dto는 아래와 구성했고 해당 객체를 body에 담아 전달해주는 로직을 작성하고 있었습니다. 여느때와 다름없는 작업이었지만 isDelete 필드만 전달 되지 않는 현상이 발생하고 있었습니다. 간단한 문제라고 생각했기에 큰 문제가 아니라고 생각했지만 고난의 시작이었습니다ㅠ..data class jacksonTest( val id : String, val name : String, val isDelete : String, val createdAt : LocalDateTime) 이렇게..

Kotlin 2024.11.24

JsonTypeInfo와 함께하는 다형성 구현

서론요구사항에 따라 여러 API를 만들다 보면 자동적으로 request dto도 변화가 발생합니다. API를 추가할 때 기존에 사용하던 dto와 별반 차이가 없다면 기존 것을 수정하는 방식을 통해 관리해 볼 수도 있겠죠 겹치는것이 많아진다면 공통 DTO를 만들어볼 수도 있겠습니다. 공통 DTO를 사용하기 애매할 경우에는 dto class를 늘리는 방법을 선택하고 있습니다. 하지만 비슷한 동작을 수행함에도 불구하고 약간의 차이가 존재한다는 이유만으로 새로운 API와 DTO를 추가하다보니 중복아닌 중복이 발생하는 느낌을 받았습니다. 앞으로 규모가 더욱 커진다면 유지보수가 복잡해지겠다는 느낌도 받았습니다. 앞선 문제를 해결할 수 있는 방법중 하나가 JsonTypeInfo 라고 생각합니다. 개요JsonTypeI..

Spring 2024.05.11