그림과 같이 클라이언트는 Model 2 아키텍처의 JSP 페이지로 직접 요청을 전송하지 않습니다. 이를 통해 서브릿은 인증 및 권한 부여, 중앙 집중식 로깅 을 비롯한 프런트 엔드 처리를 수행하고 국제화에 도움을 줄 수 있습니다. 요청 처리가 완료되면 서발은 요청을 해당 JSP 페이지로 보신다. 다음 페이지가 결정되는 방식은 응용 프로그램에 따라 매우 다양합니다. 예를 들어, 간단한 응용 프로그램에서 표시할 다음 JSP 페이지는 요청, 매개 변수 및 현재 응용 프로그램 상태에 따라 서벨렛에 하드 코딩될 수 있습니다. 보다 정교한 웹 응용 프로그램에서는 워크플로/규칙 엔진이 사용될 수 있습니다. Oracle ADF(Oracle ADF)를 사용하는 경우 JDeveloper의 데이터 바인딩 기능을 활용하여 웹 페이지가 모델 계층에서 데이터 바인딩 동적 콘텐츠를 표시할 수 있습니다. JDeveloper의 데이터 컨트롤에 대한 자세한 내용은 Oracle ADF 데이터 컨트롤 정보를 참조하십시오. Oracle ADF(Oracle ADF)를 사용하여 웹 응용 프로그램을 만들면 모델 계층에 대한 바인딩이 처리됩니다. 그렇지 않으면 뷰 계층에 대한 데이터 바인딩 구현을 만들어야 합니다.

오라클 ADF에 대한 자세한 내용은 J2EE 플랫폼 및 오라클 ADF 정보를 참조하십시오. 개념적으로 는 간단하지만 이 아키텍처는 필연적으로 각 JSP에서 많은 기능이 중복되기 때문에 대규모 응용 프로그램 개발에 도움이 되지 않습니다. 또한 Model 1 아키텍처는 응용 프로그램의 비즈니스 논리및 프레젠테이션 논리를 불필요하게 연결합니다. 비즈니스 논리와 프레젠테이션 논리를 결합하면 응용 프로그램에서 새로운 `보기` 또는 액세스 지점을 도입하기가 어렵습니다. 예를 들어 HTML 인터페이스 외에도 무선 액세스를 위한 WML(무선 태그 언어) 인터페이스를 포함할 수 있습니다. 이 경우 Model 1을 사용하면 프레젠테이션 코드의 각 인스턴스와 함께 비즈니스 논리를 불필요하게 복제해야 합니다. MVC는 뷰 계층에서 흐름이 시작되는 응용 프로그램을 사용하는 체계적인 방법으로, 요청이 제기되고 컨트롤러 계층에서 처리되고 모델 계층으로 전송되어 데이터를 삽입하고 성공 또는 실패 메시지를 다시 가져옵니다. JSP는 데이터 및 컨트롤러의 프레젠테이션 역할을 합니다. 모델이 컨트롤러와 데이터베이스에 모두 연결하는 동안 모델과 뷰 사이의 인터페이스입니다. 기본 비즈니스 논리는 모델 계층에 있습니다. Java Web 응용 프로그램의 디자인에는 모델 1과 모델 2라고 하는 두 가지 일반적으로 사용되는 디자인 모델이 있습니다.

[1] 이 예제에서는 JSP에서 MVC 아키텍처를 사용하는 방법을 보여 드리겠습니다. 위의 그림에서 볼 수 있듯이 model1 아키텍처의 흐름을 보여주는 그림이 있습니다. 컨트롤러 컨트롤러 모듈은 뷰와 모델 간의 인터페이스 역할을 합니다. 모든 요청을 가로채는 즉, 그에 따라 변경하기 위해 모델 / 보기에 입력 및 명령을 수신합니다. 웹 응용 프로그램을 개발하기 전에 디자인 모델에 대한 아이디어가 필요합니다. 프로그래밍 모델 (디자인 모델)의 두 가지 유형이 있습니다 mvc_example.jsp를 클릭하면 제출 버튼이있는 전자 메일 및 암호가있는 양식을 얻을 수 있습니다.