mvc2 패턴 예제

1999년 12월, 자바월드는 고빈드 세샤드리가 자바서버 페이지 모델 2 아키텍처를 이해하는 제목의 기사를 발표했다. [2] 이 문서에서 Govind는 “모델 2″라는 용어를 사용하는 데 두 가지 중요한 이정표를 달성했습니다. 첫 번째 이정표는 “Model 2″라는 용어를 두 가지 가능한 옵션 중 하나가 아닌 아키텍처 패턴으로 공식화하는 것이었습니다. 두 번째 이정표는 Model 2가 웹 기반 소프트웨어에 대한 MVC 아키텍처를 제공했다는 주장이었습니다. [3] 2000년 3월, 아파치 스트럿츠 프로젝트가 출시되었다. 이 프로젝트는 뷰와 컨트롤러 간의 분할을 공식화하고 “모델 2” 패턴의 구현을 주장했습니다. [3] 다시 한 번 소프트웨어 개발자가 적절한 솔루션을 채울 것이라는 기대와 함께 “모델”의 구현이 정의되지 않았습니다. JDBC와 EJB를 통한 데이터베이스 상호 작용은 스트럿츠 홈페이지에서 제안된 옵션입니다. 최근에는 최대 절전 모드, iBatis 및 객체 관계형 브리지가 모델에 사용할 수 있는 보다 현대적인 옵션으로 나열되었습니다.

[4] MVC(모델 뷰 컨트롤러) 설계 패턴은 응용 프로그램이 데이터 모델, 프레젠테이션 정보 및 제어 정보로 구성되도록 지정합니다. 패턴에서는 이러한 각 개체를 서로 다른 개체로 구분해야 합니다. 먼저 버전 2에 대한 몇 가지 계획에 대해 설명한 다음 CTP 1 비트로 가능한 몇 가지 예제를 실행해 보겠습니다. 사용자 지정 부분 형식과 일치하는 것은 시작에 불과하며 Microsoft가 버전 2를 릴리스할 때까지 형식뿐만 아니라 원하는 기준에 따라 템플릿 도우미를 지정할 수 있기를 바랍니다. 또한 레이블 위치, 예제 텍스트 및 필수 필드 표시기와 같은 표준 서식은 MVC의 CTP1에 도입된 템플릿 도우미를 ASP.NET 향상된 기능으로 활용할 수 있습니다. 그림 8은 이 예제에서 재생된 여러 부분을 볼 수 있도록 확장된 대부분의 솔루션을 보여 주어 있습니다. Microsoft는 CTP1에서 도구 영역을 구현하지 않았으므로 코드를 표시하지 는 않지만 영역으로 구성된 컨트롤러와 뷰가 있는 예제를 보려면 그림 9를 살펴보겠습니다. 일반적인 오해는 Model 2 구현을 달성하기 위해 공식화된 MVC 패턴이 필요하다는 것입니다.

그러나 Java BluePrints는 이러한 해석에 대해 구체적으로 경고합니다:[5] JSP 모델 2는 콘텐츠를 가져오고 조작하는 데 사용되는 논리와 콘텐츠 표시를 구분하는 Java Web 응용 프로그램의 디자인에 사용되는 복잡한 디자인 패턴입니다. 모델 2는 로직과 디스플레이의 분리를 유도하므로 일반적으로 모델-뷰-컨트롤러(MVC) 패러다임과 관련이 있습니다. MVC “모델”의 정확한 형식은 Model 2 설계에 의해 지정되지 않았지만, 많은 출판물에서는 MVC 모델 코드를 포함하는 공식화된 계층을 권장합니다. 예를 들어 Java BluePrints는 원래 EJB를 사용하여 MVC 모델을 캡슐화하는 것이 좋습니다. 그것은 비주얼 스튜디오에 묶여 있기 때문에 마이크로 소프트는 버전 2에서이 함께 갈 수있을 것입니다 얼마나 멀리 볼 수 남아있다 2 릴리스. 지금 영역 구현이 필요하고 기다릴 수없는 경우, 당신은 아마 http://blog.codeville.net/2008/11/05/app-areas-in-aspnet-mvc-take-2/ 스티브 샌더슨의 예에 관심이있을 것입니다. 그는 필 Haack의 블로그에서 초기 개념을 가지고 그것을 개선. 도메인은 매우 간단하며 단일 집계 루트인 Guest 클래스로 구성됩니다.

어떤 사람들은 이 단순한 모델이 도메인 모델이 아니라고 주장할 수 있지만 이 문서에서는 중요하지 않습니다. 또한 지속성에 대한 저장소 패턴을 사용하고 있습니다. IGuest Repository 인터페이스는 다음과 같습니다: 또한” 용어 “MVC2″는 모델 2가 차세대 MVC 패턴을 나타낸다는 잘못된 믿음으로 많은 이들을 이끌었습니다. 사실, MVC2는 단순히 용어 “MVC 모델 2″의 단축이다. [6] 모델 2는 MVC(모델 뷰 컨트롤러) 설계 패턴을 기반으로 합니다.