ViewResolver ?
* 컨트롤러에서 전달받은 View이름으로 클라이언트에게 응답 할 Jsp페이지를 찾아 선택하며, 응답 데이터를 분석하여
응답결과를 생성하여 전달하는 역할을 한다.
* SpringMVC에서는 Client의 요청을 처리할 시, HttpServeltRequest객체를 JSP(Java Server Pages)로 전달한다.
* ViewResolver에서 이를 활용하여, JSP(Java Server Pages) 처리 시 응답데이터를 활용하여, 최종결과를 생성한다.
Dispatcher Servlet, Handler Mapping, Controller, View ?
* Client 로 부터 HTTP요청이 들어올 시, DispatcherServlet에서 요청을 확인 후, 해당 요청에 맞는 Controller를 Handler Mapping으로 부터찾아 Request를 대상 Controller에게 전달한다. Controller는 Client에 대한 요청을 처리 한 이후, DispatcherServlet에 응답결과를 전달하게 되며 DispatcherServlet은 해당 응답결과 관한 View결과에 관하여 ViewResolver에게 요청하게 되며 해당 결과를 받아 최종적으로 Client에게 웹 브라우저 View(화면)을 보여주게 된다.
RESPONSE(응답) 결과처리 연습..
1. 클라이언트 응답(Response) 컨트롤러 생성
* 화면 응답결과(Response)를 처리하는 3가지 방식: (HttpServletRequest, Model, ModelAndView)
* 화면으로 응답할 데이터를 셋팅하는 setAttribute, addAttribute, addObject 공통적인 ('key', 'value') 구조이다.
* Model 객체를 의존성 주입받아, 셋팅하게 되면 HttpServletRequest객체에 담겨 JSP로 전달할 수 있다.
* ModelAndView는 Model 사용시 값을 셋팅하는 기능과 Clinet로 응답할 View를 지정하는 역할을 처리한다.
* HttpServletRequest, Model, ModelAndView 모두 Request영역에 할당되며 ViewResolver을 통하여 전달 처리된다.
2. ResTestController 요청(Request) 부분생성
3. ResTestController 응답결과 확인 (브라우저 URL Test)
* HTTP GET방식의 쿼리스트링으로 전달된 <a href="{contextPath}/resTest1?name=jwj&age=34">
파라미터는 ${param."key"} 로 사용한다.
* HttpServletRequest, Model, ModelAndView 모두 Request영역에 할당된다.
* 서버로부터 Request영역에 전달된 데이터 사용 시, ${requestScope."key"} 로 사용한다 (requestScope 생략가능)
'SpringMVC' 카테고리의 다른 글
[SpringMVC] RequestScope(1) (0) | 2021.09.10 |
---|---|
[SpringMVC] Server응답 처리방식(Redirect, Forward) (0) | 2021.09.08 |
[SpringMVC] 파라미터 처리방식 (2) (0) | 2021.09.01 |
[SpringMVC] 파라미터 처리방식 (1) (0) | 2021.08.30 |
[SpringMVC] Http요청 정의 및 활용 (0) | 2021.08.29 |