MVC 패턴
1.MVC 패턴
1.1 MVC 패턴의 개요
MVC란 Model, View, Controller의 약자이며 비즈니스 로직을 디자인 부분과 로직 부분으로 나누어 개발하는 방식을 뜻한다. 화면 부분은 View, 데이터베이스와 연동하는 부분등의 로직 부분을 Model, Controller는 이 두 부분을 적절하게 연결 시켜주는 역할을 한다.
1.2 MVC 패턴의 구성 밎 흐름
Controller는 View와 Model사이의 연동을 담당한다. 반드시 처리할 비즈니스 로직이 존재한다면 Controller를 호출하여 Model에서 비즈니스 로직을 수행하고 그 결과를 가지고 View에서 보여지게 해야한다.
출력된 View페이지에서 또 다른 요청을 할 경우도 Controller에게 요청을 하게 되며 Controller는 요청 내용을 받은 후 Model을 호출하여 해당하는 비즈니스 로직을 수행한다. 그리고 또 다시 Controller는 Model의 결과값을 얻어 View페이지로 보내게 된다.
1.3 Controller(서블릿)
Controller는 MVC패턴에서 View와 Model을 연결시켜주는 핵심 요소이다. Controller는 Servlet으로 구성되어있다.
Model의 경우는 일반적인 클래스 파일(POJO)로 이루어져 있으며 외부에서 접근할 필요가 없기 때문에 서블릿으로 만드는 것은 적합하지 않다.
Controller는 요청을 받아서 요청에 해당하는 Model과 View를 호출하는 역할만 하지 응답 화면을 만드는 것이 아니기 때문에 View처럼 JSP페이지로 구현할 필요가 없다. Controller는 MVC패턴에서 중심 역할을 한다는 것과 반드시 서블릿으로 이루어져야 한다.
Model과 View는 각각 비즈니스 로직 처리와 화면출력을 담당하므로 Controller를 통해서 비즈니스 로직 처리를 위해 Model을 호출하고 처리가 완료되면 화면 출력을 하기위해 Model에서 처리한 결과를 View로 전달하는 역할을 한다.
1.4 View(JSP)
View는 MVC패턴 중 화면 출력 부분에 해당한다. Controller를 통하여 Model에서 처리한 결과를 화면에 출력할 때 사용한다.
1.5 Model(POJO)
Model은 MVC패턴에서 실제로 비즈니스 로직을 실행하는 부분이다.(POJO - Plain Old Java Object)
Model은 비즈니스 로직을 처리하여 얻은 결과를 Controller를 통해 View 페이지로 전달하게 된다.데이터베이스 작업을 할 경우 이 작업이 Model 부분에서 이루어지게 된다.