반응형
# MVC03_01 ~ 03 MVC03(Model2 방식)개요, 포워드(forward) 기법, 요청의뢰와 객체 바인딩
# MVC03_01 MVC03(Model2 방식)개요
## 학습 예정
- RequestDispatcher (요청의뢰 객체)
- 포워드(=포워딩, forward)
- 객체 바인딩
## MVC03 프로젝트 생성
- File > New > Dynamic Web Project 클릭 > Project name : MVC03 > Next > Next > Generate web.xml deploymen descriptor 체크 후 Finish.
- MVC01 자료를 바탕으로 작업 예정
## 톰캣 서버 등록
- Server > 톰캣서버 우클릭 > Add and Remove 클릭
- Available에 있는 MVC03 클릭 후 Add 클릭
## 패키지 생성
- kr.bit.controller
- kr.bit.db
- kr.bit.model
## 데이터베이스 연결을 위한 드라이버 추가.
- MVC03 > WebContent > WEB-INF > lib 에 mysql-connector-java-5.1.31.jar 추가
## 회원가입 페이지 생성
- MVC03 > WebContent 에 member 폴더 추가,
- member 폴더에 memberRegister.html 추가
# MVC03_02 forward(포워드=포워딩) 기법
- 서버에서 Controller와 JSP 간에 페이지를 전달요청하고 요청받은 JSP가 Controller가 가지고 있는 데이터를 가져와서 View를 한다음, View의 결과를 다시 Controller에게 넘겨주면 Controller는 이 데이터를 받아서 그대로 응답을 학는것을 포워드(포워딩) 이라고 한다.
- Controller와 view가 서로 forward 될 때, 데이터를 보내고 받으려면 특정 메모리 공간에 넣어주고, forward 할 때 다시 데이터를 빼내야 하는데 이걸 객체를 특정 메모리에 연결시켰다 하여 객체 바인딩 이라고 한다.
# MVC03_03 RequestDispatcher(요청의뢰) 와 객체 바인딩
1. 클라이언트가 Controller에게 요청을 하게 되면 Controller에는 HttpServletRequest 객체와 HttpServletResponse 객체 (요청과 응답 객체)가 생성된다.
2. Controller에 있는 reqeust 객체와 response 객체가 각 객체(HttpServletRequest 객체와 HttpServletResponse 객체)를 가르키게 된다.
3. Controller는 Model(Java) 와 연동 DAO를 통해 DB에서 데이터를 가져온다.
4. 요청을 의뢰할 페이지를 얻어온다.
- RequestDispatcher rd = request.getRequestDispatcher(); 를 이용하여 JSP 가져온다.
5. 객체 바인딩
- 메모리 공간(request)에 특정 객체를 집어 넣는것. request.setAttribute(); 를 이용.
6. 포워딩 진행
- rd.forward(request, response); 를 이용 클라이언트에게 응답을 하게 된다. 여기서 request, response는 2번에서의 request, response와 동일. 이때 메모리 공간에 들어있는 특정 객체를 가져와서 응답. request.getAttribute(); 를 이용
반응형
'인프런 강의 학습 > MVC 프레임워크_나프1탄' 카테고리의 다른 글
인프런 MVC 프레임워크는 내손에 35일차 : MVC03_06 Basic MVC 완성 (0) | 2021.06.15 |
---|---|
인프런 MVC 프레임워크는 내손에 34일차 : MVC03_04 ~ 05 redirect, forward 기법을 이용한 페이지 전환 및 데이터 전달 방법 (0) | 2021.06.14 |
인프런 MVC 프레임워크는 내손에 32일차 : MVC02_07 MVC02정리 및 Model 2방식 (0) | 2021.06.09 |
인프런 MVC 프레임워크는 내손에 31일차 : MVC02_05~06 회원리스트 및 삭제 구현 (0) | 2021.06.09 |
인프런 MVC 프레임워크는 내손에 30일차 : MVC02_04 Controller용 JSP와 View용 JSP (0) | 2021.06.08 |