-
[Spring] HttpMessageConverter(2)Spring 2025. 4. 17. 15:46
Spring
https://note8770.tistory.com/124
[Spring] HttpMessageConverter
SpringHttpMessageConverter우선 순위 🔥 HttpMessageConverter 🎯 View(화면 표시)를 응답하는 것이 아닌, Rest API(HTTP API)로 JSON, TEXT, XML 등의 데이터를 응답 Message Body에 직접 입력하는 경우 HttpMessageConverter를
note8770.tistory.com
https://note8770.tistory.com/125
[Spring] ArgumentResolver
Spring RequestMappingHandlerAdapter ArgumentResolver ReturnValueHandler 🔥 Spring MVC에서 HTTP 요청을 컨트롤러 메서드에 매핑하고 실행하는 핵심 구성 요소! 🎯 클라이언트 요청을 적절한 컨트롤러 메서드와 연결
note8770.tistory.com
🔥 인/아웃 데이터를 변환하는 중간다리 HttpMessageConverter
🎯 ArgumentResolver (Input) → HttpMessageConverter (요청을 변환해서 서버로)
🎯 ReturnValueHandler(Output) → HttpMessageConverter (응답을 변환해서 클라이언트로)
✅ 언제 사용 되는가?

요청시에는 Argument Resolver가 사용하는것이다.
■ 클라이언트 → 서버로 요청할 때 (Input)
▶ ArgumentResolver가 컨트롤러 메서드의 매개변수를 분석
▶ @RequestBody라면? HttpMessageConverter가 JSON을 객체로 변환(역직렬화)
@PostMapping("/user") public void saveUser(@RequestBody User user) { // user 객체가 JSON에서 변환된 상태로 들어옴 }응답시에는 ReturnValueHandler가 사용한다.
■ 서버 → 클라이언트로 응답할 때 (Output)
▶ ReturnValueHandler가 컨트롤러의 리턴값을 분석
▶ @ResponseBody, ResponseEntity 등 이라며? HttpMessageConverter가 객체가 JSON으로 변환(직렬화)요청
↓
[DispatcherServlet]
↓
[ArgumentResolver]
↓ (HttpMessageConverter ← JSON → 객체)
[Controller 메서드]
↑
[ReturnValueHandler]
↑ (객체 → JSON → HttpMessageConverter)
[DispatcherServlet]
↑
응답'Spring' 카테고리의 다른 글
[Spring]TypeConverter (0) 2025.04.17 [Spring]WebMvcConfigurer (0) 2025.04.17 [Spring] ArgumentResolver (0) 2025.04.17 [Spring] HttpMessageConverter (0) 2025.04.17 [Spring] 트랜잭션 (0) 2025.04.17
