inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

정리

html 대신 객체를 반환할 때 Dispatcher Servlet에서는 어떻게 처리가 되는걸까요??

해결된 질문

413

김태훈

작성한 질문수 6

2

안녕하세요, 강의를 보다가 이해가 안되는 부분이 있어서요.

 

Spring MVC 구조에서

핸들러 어댑터는 Dispatcher Servlet한테 ModelAndView를 반환해주잖아요!

그러면 Dispatcher Servlet은 view Resolver를 사용해서 View로 만들어줘 HTML을 보내주고요.

그런데 @ResponseBody 등을 사용해 html대신 직접 객체를 반환해주는 경우에는 어떤 식으로 흐름이 진행되는지가 헷갈려서요,

Http 메세지 컨버터에 보내주면 여기에서 응답 결과를 만드는 거 까지는 이해했는데, 그러면 핸들러 어댑터는 DispatcherServlet에 ModelAndView를 반환하지 않아도 되는건가요?

 

요약하면 HTML대신 객체를 반환하는 경우 Dispatcher Servlet에서 어떻게 처리가 일어나는지가 궁금합니다..!

 

MVC spring

답변 1

2

David

안녕하세요. 김태훈님, 공식 서포터즈 David입니다.

view가 없으면 view와 관련된 처리를 하지 않습니다.

대신, response body를 사용하여 객체를 json 형태로 내보낼 때에는 응답 메시지의 body에 객체를 json 형태로 변환한 문자열을 씁니다(write). 그러면 사용자는 응답으로 json 형태의 문자열을 받아보게 됩니다.

구체적인 동작 원리는 DispatcherServlet.doDispatch() 코드 디버깅하여 따라가보시면 좋을 것 같습니다.

감사합니다.

servlet과 container에 대한 질문입니다

0

21

1

api를 어느 컨트롤러에 작성해야하는지는 어떤 기준으로 해야하나요?

0

62

1

jsp 의존성 수정 요청

0

75

2

요즘 웹 서버가 주로 사용되는 이유는 SPA 구조 때문일까요 ?

0

142

1

save() 메서드 문의

0

65

1

절대 경로로 templates/basic 하위 파일 열면 css 적용 안되는 현상

0

99

1

request-body-json

0

83

2

MVC 패턴의 적용 단위

0

94

1

RequestMapping을 이용한 핸들러, 어댑터

0

118

2

save 후 결과화면

0

86

2

jsp를 이용한 view

0

97

1

application.properties에 debug 추가해도 결과가 똑같습니다.

0

175

1

수업 코드 제공 관련 문의

0

97

2

RequestMappingHandlerAdapter의 Controller 호출 과정

0

98

3

파일 오픈 시

0

68

1

스프링 배치 관련

0

77

1

@RequestParam의 defaultValue가 blank 값도 처리하는 지 여부

0

112

1

postman으로 /request-body-json-v1 호출시 500 error

0

94

1

프론트엔드와 백엔드의 mvc, rest api에 대한 질문

0

77

1

모델의 역할과 계층 분리에 대한 이해 차이 + 추가질문

0

111

1

console log 출력 관련 질문입니다.

0

73

1

애플리케이션이 실행 되지 않습니다 ㅠㅠㅠ

0

138

1

html 변경하는 부분 적용 문제

0

100

1

한글 깨짐

0

76

2