인프런 커뮤니티 질문&답변

이승훈님의 프로필 이미지
이승훈

작성한 질문수

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

HTTP 메시지 컨버터

httpMessageConverter와 ModelAttribute

작성

·

503

0

[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]
이번 강의에서 Http 메시지 컨버터는 JSON 데이터를 바디에서 직접 읽거나 쓰는 경우에 사용된다고 들었습니다. 그리고 바디에서 사용되니까 @RequestBody, @ResponseBody에서 사용한다는 사실도 알았습니다.
그렇다면 @ModelAttribute같은 것은 다른 converter를 사용해서 객체로 만들어주는 것인가요?
데이터를 읽어서 객체로 넣어준다는 사실에서 기능이 비슷하다고 느끼는데 body와 parameter라는 차이 때문에 다른 converter를 쓰는 것인지 궁금합니다.

답변 1

0

안녕하세요, 이승훈 님. 공식 서포터즈 codesweaver 입니다.
.

스프링에는 여러가지의 HttpMessageConverter를 가지고 있습니다. 폼값을 객체에 매핑하는 컨버터는 FormHttpMessageConverter를 사용합니다.MappingJacksonHttpMessageConverter를 사용합니다. 어떤 컨버터를 사용할지는 요청된 데이터의 형식에 따라 달라집니다. 반대로 출력의 경우도 마찬가지로 어떤 형식의 데이터인지에 따라 컨버터를 선택, 응답하게 됩니다.

 

컨버터의 종류를 정리한 블로그 링크를 남기니 참고하시기 바랍니다.
https://joont92.github.io/spring/MessageConverter/
.
감사합니다.

 

이승훈님의 프로필 이미지
이승훈

작성한 질문수

질문하기