<html><body>
<h1 align="center">Beer Selection Page</h1>
<form method="POST" action="SelectBeer.do">
<p>Select beer characteristics</p>
Color:
<select name="color" size="1">
<option value="light"> light </option>
<option value="amber"> amber </option>
<option value="brown"> brown </option>
<option value="dark"> dark </option>
</select>
<br><br>
<center>
<input type="SUBMIT">
</center>
</form>
</body></html>
Model Class를 통해 비즈니스 로직 분리
클라이언트가 form.html을 요청하고 컨테이너가 파일시스템에서 읽어온 후 브라우저로 넘겨준다.
이후, 사용자가 본인이 선택한것을 컨테이너로 보내고 컨테이너는 url을 분석하여 담당 서블릿을 찾아 요청을 보낸다.
그 후, 서블릿은BeerExpert
클래스를 호출하고, 해당 클래스는 맥주에 대한 조언을 서블릿으로 넘겨준다. 이를 바탕으로 HTML페이지를 작성하여 컨테이너로 보내고 컨테이너느 사용자에게 보낸다.
이와 같이 BeerExpert는 모델이다.
그렇기에 색깔을 받고 뭘 해야하는지 조언을 해준다고 보면된다.
비어 익스퍼트를 생성하고 결과값을 모델에게 맡긴다.
그 후 반환값을 가져온다.
-뷰(jsp) 화면 이용의 흐름
뷰에게 작업을 넘기는 부분이 추가됐다고 보면된다
이전에는 컨트롤러가 보여줫지만, 이제는 JSP로 넘길 작업의 결과값을 request객체에 attribute로 설정하고 RequestDispatcher객체를 생성하여 foward를 통해서 request, response를 넘기는 작업을 수행한다.
그러면 뷰에서는 위와 같이 받아 나머지 작업을 수행해준다.
이와 같이 나머지 배포작업을 진행하면된다..
배포는 3가지 방법이 있고 이 방법이 최종인듯하다.