MVC

MVC 패턴이란?

Model, View, Controller를 뜻하는 용어로 개발 형태의 일종이다.

  • Model은 데이터베이스와의 관계를 담당한다. 클라이언트 요청에 필요한 자료를 데이터베이스로부터 추출하거나, 수정하여 Contoller로 전달한다.

  • View는 사용자한테 보여지는 UI화면이다. 주로 .jsp 파일로 작성하며, Controller에서 어떤 View 컴포넌트를 보여줄지 결정한다.

  • Controller는 클라이언트의 요청을 받고, 적절한 Model에 지시를 내리며, Model에서 전달된 데이터를 적절한 View에 전달한다.

작업을 분할하여, 추후 유지보수를 더 좋게 만든다.

Model 1

MVC에서 View와 Controller 같이 있는 형태이다. 한 파일에 같이 있다고 생각하면된다.

이전에 많이 쓰이던 방법이다.

Model 2

전통적인 MVC를 따르는 방법이다. Model, View, Controller가 모두 모듈화 되어 있는 형태이다.

실습

1. 테이블 만들기

2. FrontController 만들기

클라이언트의 요청을 받는 FrontController를 만들자. 사용자의 요청을 집중시킨다.

3. Command

Command 인터페이스를 만들어서 각각의 클래스를 만들어준다.

BCommand 인터페이스

BWriteCommand

BListCommand

BContentCommand

BModifyCommand

BDeleteCommand

BReplyViewCommand

BReplyCommand

4. DTO(Data Transfer Object) 만들기

데이터 베이스의 데이터 DTO 객체를 만든다.

5. DAO(Data Access Object) 만들기

DAO는 DB를 사용해 데이터를 조회하거나 조작하는 기능을 전담하도록 만든 Object이다.

6. View 페이지 만들기

클라이언트의 요청에 대해서 FrontController에서 작업을 분기하고, 해당 Command클래스가 작동하여 DAO를 이용한 데이터 베이스 작업을 한다.

DAO클래스의 결과물로 DTO객체가 View(.jsp페이지)로 전달되며, View에서는 클라이언트의 요청에 대한 응답으로 화면(UI)를 구성하여 출력 한다.

content view

list_view

reply_view

write_view

Last updated

Was this helpful?