반응형

@RequestBody 2

[Spring 공식문서 정리] 16. HttpMessageConverter – JSON은 언제 변환될까?

15편에서는 ArgumentResolver가 컨트롤러 메서드의 파라미터를 어떻게 만들어주는지를 살펴봤습니다.그 과정에서 특히 눈에 띄는 파라미터가 하나 있었습니다.@RequestBody는 다른 파라미터들과 뭔가 다르게 동작한다이번 글에서는 그 “다른 동작”의 정체, 즉 HttpMessageConverter가 언제, 어디서, 왜 호출되는지를 구조적으로 정리해보겠습니다.1. HttpMessageConverter의 역할HttpMessageConverter는 한 문장으로 정의할 수 있습니다.HTTP 메시지 바디와 Java 객체 사이의 변환을 담당하는 컴포넌트즉,요청 본문(JSON → 객체)응답 본문(객체 → JSON)을 처리하는 책임을 가집니다.중요한 점은,HttpMessageConverter는 컨트롤러의 책임..

[Spring 공식문서 정리] 15. ArgumentResolver – 컨트롤러 파라미터는 어떻게 만들어질까?

14편에서는 HandlerAdapter가 HandlerMapping이 선택한 컨트롤러를 실제로 실행하기 위한 “실행 전략”이라는 점을 살펴봤습니다.이번 글에서는 컨트롤러 실행 과정에서 가장 많은 개발자가 궁금해하는 질문을 다뤄보겠습니다.@RequestParam, @PathVariable, @RequestBody 같은 값들은 도대체 언제, 어디서 만들어질까? 이 질문에 대한 답이 바로 ArgumentResolver입니다.1. ArgumentResolver의 역할ArgumentResolver의 공식적인 이름은HandlerMethodArgumentResolver 입니다.이 인터페이스의 역할은 단순합니다.컨트롤러 메서드의 파라미터 하나를 실제 값으로 변환해주는 역할 즉, 컨트롤러 메서드의 각 파라미터마다이 파라..

반응형