ModelAndView:
- ModelAndView는 스프링 MVC에서 주로 사용되는 객체로, 컨트롤러에서 처리한 데이터(Model)와 그 데이터를 표시할 뷰(View)를 함께 반환
- 예를 들어, 컨트롤러에서 데이터를 처리한 후, 그 데이터를 JSP 파일과 같은 뷰 템플릿에 넣어서 완성된 HTML 페이지를 클라이언트에게 반환
- 클라이언트는 이 HTML 페이지를 받아서 브라우저에 표시
@ResponseBody:
- @ResponseBody는 데이터를 뷰 템플릿을 거치지 않고 직접 클라이언트에 반환하는 역할을 함
- 이 어노테이션을 사용하면 컨트롤러 메서드는 데이터를 JSON, XML 등의 형식으로 변환하여 HTTP 응답의 본문(body)에 직접 작성
- 클라이언트는 이 JSON 데이터를 받아서 브라우저에서 표시하거나, JavaScript로 추가 처리할 수 있음
∴
- ModelAndView는 처리한 데이터를 HTML과 같은 뷰를 통해 렌더링하여 클라이언트에 반환하는 방식
- @ResponseBody는 데이터를 JSON 등으로 변환하여 클라이언트에 직접 반환하는 방식
이 차이로 인해 ModelAndView는 주로 웹 페이지를 반환할 때 사용되고, @ResponseBody는 RESTful API에서 데이터만 반환할 때 주로 사용
'Spring' 카테고리의 다른 글
ServletResponse.isComitted(), FilterChain (with GPT) (2) | 2024.12.19 |
---|---|
(지피티 선생님의) 람다와 일급 객체, FP 특강 (0) | 2024.12.12 |
WebFlux 첨들어봄 (1) | 2024.12.10 |
Spirng AOP (3) | 2024.09.03 |
Spring MVC 설정 파일 이해하기 : web.xml & dispatcher-servlet.xml (1) | 2024.09.03 |