API 요청과 DB 컬럼이 다를 때, DTO와 VO를 나누는 이유
Backend/Architecture
·
2025. 7. 1.
API를 개발하던 중, 요청으로 들어오는 JSON 구조와 실제 DB에 저장해야 하는 컬럼 구조가 서로 다른 경우를 마주했다. 그동안은 상황에 따라 Model 클래스를 임의로 만들거나, DB 구조 또는 요청 구조 중 하나에 맞춰 사용하는 방식으로 처리해왔다. 하지만 이번에는 요청 객체를 그대로 DB에 저장할 수 없는 상황이 생기면서, 구조 분리를 어떻게 해야 할지 고민이 깊어졌다.이 과정에서 DTO와 VO의 개념을 다시 떠올렸지만, 정확히 언제 어떻게 나눠서 써야 하는지에 대해서는 명확하지 않았다. 따라서 이번 포스팅에서는 DTO와 VO의 정의, 구조, 사용 위치 등에 대해 정리해보려 한다.DTO와 VO란?🧾 DTO (Data Transfer Object)정의: 계층 간 또는 네트워크 전송 시 데이터를 ..