Java

mvc1 , mvc2 차이점

dong99 2024. 3. 17. 22:46

오늘은 mvc 패턴에 대해서 알아보자

 

일단 mvc 의 뜻은

m: Model -> 백그라운드에서 동작하며, 사용자가 원하는 데이터나 정보를 제공한다.

v: View -> 사용자의 요청을 화면으로 출력한다.

c: Controller -> 사용자의 요청을 처리하고, 그 요청에 따른 전체적인 흐름을 제어한다.

 

사용자는 Controller 를 통해 얻고자 하는 정보나 기능을 요청하면

Controller는 요청을 수신한 뒤 비즈니스 로직을 실행하며 필요에따라 Model을 호출하여 데이터를 요청한다.

모든 요청을 처리하면 View를 통해 사용자가 원하는 정보를 시각적으로 보여준다.

 

이 mvc 패턴은 mvc1, mvc2로 나뉘어지는데 우선 mvc1을 먼저 알아보자

 

MVC 1

mvc1의 특징은 Controller 와 View 의 역할이 합쳐져있다.

 

mvc1으로 개발을 진행하게되면 상대적으로 난이도는 쉬울 수 있으나

Jsp 에 Java, Html, Css등 코드가 모두 뒤섞이기 때문에 유지보수가 어렵다는 단점이있다.

 

MVC 2

mvc2의 특정은 View와 Controller를 분리했다는 점인데

Jsp는 View의 역할만을 담당하고 Controller는 Servlet이 수행한다.

 

mvc2에서는 사용자의 요청을 Servlet이 받게되고 비즈니스 로직을 실행 후 Model에게 데이터를 요청하며

최종적으로는 Jsp가 View의 역할을 하도록 제어하여 화면에 출력하게된다.

mvc2의 장점은 확장성이 좋고 유지보수가 mvc1에 비하여 수월하다는 점이지만

mvc1에 비하여 개발 속도는 조금 더 느리다고 할 수 있다.