인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

alrnr3521님의 프로필 이미지
alrnr3521

작성한 질문수

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

Model 추가 - v3

FrontControllerServletV3

작성

·

172

0

String viewName = mv.getViewName();
MyView view = viewResolver(viewName);

view.render(mv.getModel(), request, response);
private MyView viewResolver(String viewName) {
return new MyView("/WEB-INF/views/" + viewName + ".jsp");
}

여기에서 2번째 코드로 인해서 view 인스턴스에 return값으로 new MyView() 여기 괄호안에 viewPath값이 들어가니까

view.render할때 render함수에서

public void render(Map<String, Object> model, HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
modelToRequestAttribute(model, request);
RequestDispatcher dispatcher = request.getRequestDispatcher(viewPath);
dispatcher.forward(request, response);
}

3번째 줄 viewPath값을 쓸수가 있는건가요?

답변 1

0

안녕하세요. alrnr3521님, 공식 서포터즈 OMG입니다.

viewPath는 MyView 생성자로 값이 채워지며,

MyView view 인스턴스가 생성될 때 viewPath를 인자로 받습니다. ( viewResolver로 메서드 추출합니다.)



감사합니다.

 

alrnr3521님의 프로필 이미지
alrnr3521

작성한 질문수

질문하기