JSP페이지(뷰)->요청(컨트롤러)->로직수행(모델)->값받음(컨트롤러)->출력(JSP,뷰)
컨트롤러(서블릿)
1. 웹브라우저가 전송한 HTTP요청을 받는다. 서블릿의 doGet()메소드나 doPost()메소드가 호출된다.
2. 웹브라우저가 어떤기능을 요청했는지 분석한다. 예를 들어, 게시판 목록을 요청했는지, 글쓰기를 요청했는지 알아낸다.
3. 모델을 사용하여 요청한 기능을 수행한다.
4. 모델로부터 전달받은 결과물을 알맞게 가공한 후,
request나 session의 setAttribute()메소드를 사용하여 결과값을 속성에 저장한다.
이렇게 저장된 결과값은 뷰인 JSP에서 사용된다.
5. 웹브라우저에 보여 줄 JSP를 선택한 후, 해당 JSP로 포워딩한다. 경우에 따라서 리다이렉트를 하기도 한다.
뷰(JSP)
화면에 보여주는 역할
웹브라우저가 지속적으로 컨트롤러에 요청을 보낼 수 있는 링크를 제공함으로
웹브라우저가 업무 흐름에 따라 컨트롤러에 알맞은 요청을 보낼 수 있도록 해준다.
모델
어떤것을 통해 구현된다는 규칙은 없다.
비즈니스로직을 처리해준다면 그것이 모델이다.
1. 컨트롤러로부터 요청을 받음
2. 비즈니스 로직 수행 & 저장
3. 수행결과(저장된 값) 컨트롤러에 리턴
JSP->Action(컨트롤러)->Service(모델)->DAO(빈)->쿼리->JSP
JSP->Action(컨트롤러)->Service(모델)->DAO(빈)->쿼리->DAO(빈)->Service(모델)->Action(컨트롤러)->JSP
<-------------------요청-------------------------><-----------값 리턴-----------------><-출력->
================================== MVC (Model & View & Controller)
===========================================
1. *.do파일 접속 2. web.xml에서 맵핑(servlet-mapping)
3. web.xml에서 servlet-name을 따라가게되서 servlet-class 호출
(servlet에 초기값인 init-param값을 설정하여 맵핑프로퍼티파일 경로를 적어준다)
4. 컨트롤러에서 요청이 무엇인지 파악(request 다 받음)
5. 컨트롤러에서 요청에 따른 핸들러 호출(필요한 데이터 모델로 넘김)
6. 핸들러에서 값설정 후 DAO or DTO클레스 호출
7. DAO or DTO에서 로직처리
6. 처리후 핸들러가 에트리뷰트나 세션에 필요한값(리스트,필요변수,성공여부값....) 저장후 url값 리턴
7. 컨트롤러에서 데이터 저장하고 리턴받은 url대로 포워딩
8. 뷰에서 출력
5. 컨트롤러에서 요청에 따른 핸들러 호출(필요한 데이터 모델로 넘김)
6. 핸들러에서 값설정 후 DAO or DTO클레스 호출
7. DAO or DTO에서 로직처리
6. 처리후 핸들러가 에트리뷰트나 세션에 필요한값(리스트,필요변수,성공여부값....) 저장후 url값 리턴
7. 컨트롤러에서 데이터 저장하고 리턴받은 url대로 포워딩
8. 뷰에서 출력
'Back-End > JSP' 카테고리의 다른 글
서블릿 매핑!! (0) | 2012.03.05 |
---|---|
tomcat 에서 servlet 을 직접 호출(invoker 에러해결) (0) | 2012.03.05 |
톰켓에 커넥션풀생성 <톰캣 context.xml> (0) | 2012.02.29 |
Beans, DAO, DTO (0) | 2012.02.27 |
자바빈게시판 만든것 (0) | 2012.02.23 |