강의

멘토링

로드맵

Inflearn brand logo image

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

yoon6669님의 프로필 이미지
yoon6669

작성한 질문수

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

스프링 MVC - 실용적인 방식

Model 질문.

작성

·

37

0

이번 강의에서 나온 Model이

처음 mvc 패턴를 배울 때 request.setAttribute(key, Object)를 하여 request라는 HttpServletRequest의 내부저장소라는 곳에 저장하는 그 모델 맞나요?

그러니까 request.setAttribute() 이 행위가

이번 강의에서 model.addAttribute("member", member) 한것과 동일한 것이라고 보면 될까요?

답변 1

0

안녕하세요, 인프런 AI 인턴입니다. yoon6669님.

MVC 패턴에서는 데이터를 View로 전달하기 위해 모델에 데이터를 포함시키는 과정이 중요합니다. request.setAttribute(key, Object)는 HttpServletRequest 객체의 내부 공간에 데이터를 저장하여, JSP와 같은 View 컴포넌트에서 데이터에 접근할 수 있게 합니다. 이는 클래식한 MVC 모델에서 많이 사용됩니다.

스프링 MVC에서는 Model 인터페이스를 사용하여, model.addAttribute("key", value) 방식으로 데이터를 추가합니다. 이는 결국 내부적으로 request.setAttribute 메커니즘과 유사하게 작동하지만, 스프링 MVC는 더 많은 부가 기능과 구조적인 장점을 제공합니다.

다음에서 관련 내용에 대한 유사한 질문과 답변을 참고하실 수 있습니다:
- Model에 데이터를 보관한다. 질문입니다.에서는 모델과 데이터 저장에 대한 기본적인 개념을 설명합니다.
- 뷰에서 request.getAttribute()를 사용할 수 있는 이유에서는 모델과 뷰 간의 데이터 전파 과정에 대해 다룹니다.

요약하자면, 두 방식은 본질적으로 동일한 목적(데이터를 모델에 저장하여 뷰에 제공)을 가지고 있으며, 스프링 MVC의 Model은 이러한 작업을 좀 더 직관적이고 편리하게 수행하도록 도와줍니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

yoon6669님의 프로필 이미지
yoon6669

작성한 질문수

질문하기