code

요청 MVC와 구성 요소 MVC의 차이점

codestyles 2020. 11. 28. 09:31
반응형

요청 MVC와 구성 요소 MVC의 차이점


JSF가 컴포넌트 기반 MVC를 구현하고 있고 Spring MVC가 요청 기반 MVC를 구현하고 있다고 들었습니다. 이 두 유형의 정확한 기술적 차이점이 무엇인지 알고 싶습니다.


요청 (동작) 기반 MVC에서 단일 프런트 컨트롤러 서블릿은 요청 URL / 매개 변수를 기반으로 동작 모델에 위임합니다. 액션 모델에서 원시 HttpServletRequestHttpServletResponse객체로 직접 작업합니다. 요청 매개 변수를 수집, 변환 및 검증하고 필요한 경우 비즈니스 작업을 호출하기 전에 모델 값을 업데이트하는 코드를 직접 작성해야합니다.

구성 요소 기반 MVC에서 단일 프런트 컨트롤러는 요청 매개 변수를 수집, 변환 및 검증하고 모델 값 자체를 업데이트하므로 비즈니스 작업에 대해서만 걱정할 필요가 있습니다. 컨트롤러가 값을 수집 / 변환 / 검증 / 업데이트해야하는 방법은 단일 위치 인보기에서 정의됩니다. "일반"HTML에서는 불가능하므로 목표를 달성하려면 특정 마크 업 언어가 필요합니다. JSF 2.0의 경우 XML (XHTML) 기반입니다. XML을 사용하여 컨트롤러가 모델 값을 수집 / 변환 / 검증 / 업데이트하고 필요한 HTML 표현을 생성 / 렌더링하는 방법에 대한 정보를 포함하는 UI 구성 요소를 정의합니다.

이 시점에서 장점과 단점이 명확해야합니다. 요청 기반 MVC 프레임 워크를 사용하면 목표를 달성하기 위해 더 많은 (보일러 플레이트) 코드를 직접 작성해야합니다. 그러나 프로세스와 HTML / CSS / JS 출력에 대해 훨씬 더 세밀한 제어가 가능합니다. 컴포넌트 기반 MVC 프레임 워크를 사용하면 많은 코드를 직접 작성할 필요가 없습니다. 그러나 프로세스 및 HTML / CSS / JS 출력에 대한 세부적인 제어가 어렵습니다. 따라서 표준 설명 및 / 또는 구현에서 제공 하는 것과 약간 다른 작업을 수행 하려면 구성 요소 기반 MVC 프레임 워크에서 그 내용에 정통하지 않을 때 훨씬 더 많은 시간을 낭비하게됩니다. .

Manfred Riem (JSF 2.x 팀 구성원 및 전 Java EE 8 MVC 1.0 사양 책임자)은 Devoxx 14에서 MVC 1.0 (JSR 371)에 대한 연설에서 이를 잘 설명했습니다 .

사진

또한보십시오:

참고 URL : https://stackoverflow.com/questions/4801891/difference-between-request-mvc-and-component-mvc

반응형