개요
json이나 form, 쿼리를 객체(DTO)로 바인딩하거나 객체(DTO)를 json으로 바인딩하기 위한 필요한 최소한의 어노테이션을 정리해봤습니다.
왜 필요한지도 알아보고 싶었으나 너무 어려워서 그렇게까지 공부하진 못 했습니다…
용어
Serialize - 직렬화
Object → json
Response DTO의 경우
Deserialize - 역직렬화
json → Object
Request DTO의 경우
@ResponseBody
응답 객체(ResponseDTO)를 json으로 변환.
어노테이션
@NoArgsConstructor
@Getter
@RequestBody
요청 본문(json)를 객체(DTO)로 변환.
어노테이션
@NoArgsConstructor
@Getter
@ModelAttribute
요청 (Form or 쿼리)을 객체(DTO)로 변환.
쿼리형식의 요청(/api/v1/hostpital?city=서울), http form태그로 들어온 요청을 DTO로 바인딩하는 어노테이션.
기본적으로 생략되어 사용됨.