📗 스프링 Spring

[스프링/Spring] Spring MVC

핑크빛연어 2021. 4. 13. 09:00

 

Spring Framework 의 패턴인 Spring MVC

 

 

 

Spring MVC 란 ?

 

소프트웨어 엔지니어링에서 사용자 인터페이스와 애플리케이션 로직을 분리하는데 사용되는 패턴

Model - View - Controller 의 약자

 

 

 

Model

- 애플리케이션의 비즈니스 계층.

- 애플리케이션의 상태를 나타내는 데이터 계층. 

- 뷰가 렌더링하는데 필요한 데이터.

- Java 클래스로 구성.

 

View

- 애플리케이션의 프리젠테이션 계층.

- 애플리케이션에서 실제로 보이는 부분.

- UI 형식의 응용 프로그램 출력.

- jsp 페이지로 구성.

 

Controller

- 애플리케이션의 흐름을 관리.

- 사용자의 액션에 응답하는 컴포넌트.

- Model 을 업데이트하고 다른 액션들을 수행한다.

- View 와 Model 간의 인터페이스 역할.

- View 계층에서 요청을 받고 필요한 유효성 검사를 수행한 후 요청을 처리한다.

- 서블릿으로 구성.

 

 

 

MVC 패턴은 Java Web Programming 에서 MVC1, MVC2 두가지 패턴으로 나눈다

 

 

 

MVC 1 패턴

 

 

- View, Controller 모두 jsp 가 담당하는 형태를 가진다.

- jsp 하나로 요청을 받고 응답을 처리하므로 구현 난이도는 쉬우나 jsp 에서 모두 MVC 가 이루어진다.

- 재사용성이 떨어지고 유지보수 시 어려움이 있다.

 

 

 

MVC 2 패턴

 

 

- spring 이 채택한 표준으로 사용되는 패턴.

- 요청을 하나의 컨트롤러(servlet) 가 먼저 받는다.

- servlet 이 java bean 을 이용해서 database 에서 데이터를 가져와 그 결과를 jsp 를 통해 화면에 출력한다.

- servlet 은 요청과 데이터를 처리하는 Controller 의 역할을 수행하고,

- jsp 는 모델의 결과를 보여주는 view 의 역할을 수행한다.

- 이렇게 View 와 Controller 를 분리할 수 있다.

- MVC1 의 단전을 보완한 패턴으로 재사용성이 편리하여 유지보수 시 큰 이점을 가진다.

 

 

 

 

 

 

728x90
반응형