Java에서 MVC 아키텍처를 구현하는 방법은 무엇입니까?



Java의 MVC 아키텍처에 대한이 기사는 정확히 MVC 디자인 패턴이 무엇이며 웹 애플리케이션을 쉽게 디자인 할 수 있도록하는 방법을 이해하는 데 도움이됩니다.

웹 개발 필드에서 Model-View-Controller가장 많이 언급되는 오늘날 웹 프로그래밍 세계에서. MVC 아키텍처는 처음에 두 가지 주요 웹 개발 프레임 워크 인 Struts와 Ruby on Rails . 이 기사에서는 MVC 아키텍처에 대해 조금 살펴 보겠습니다. .

이 기사에서 다룰 주제는 다음과 같습니다.





우리가 실제로 g 전에MVC 아키텍처의 기술에 대해 알아야 할 특정 개념이 있습니다.

system.exit (0)
  • 디자인 패턴 는 소프트웨어 엔지니어링에서 소프트웨어를 설계 할 때 일반적으로 발생하는 문제를 해결하는 기술입니다.
  • 디자인 모델, 문제를 해결하거나 모델을 설계하는 데 사용하는 아키텍처 유형을 지정합니다.
  • 두 가지가있다 디자인 모델의 유형 : 모델 1 아키텍처 , 모델 2 (MVC) 아키텍처.

Java의 MVC 아키텍처는 무엇입니까?

MVC 아키텍처를 기반으로 한 모델 설계는 MVC를 따릅니다. 소프트웨어를 설계 할 때 사용자 인터페이스에서 애플리케이션 로직을 분리합니다. 이름에서 알 수 있듯이 MVC 패턴에는 다음과 같은 세 개의 레이어가 있습니다.



  • 모델 – 애플리케이션의 비즈니스 계층을 나타냅니다.
  • 전망 – 응용 프로그램의 표현을 정의합니다.
  • 제어 장치 – 애플리케이션의 흐름을 관리합니다.

MVC-자바의 MVC 아키텍처-Edureka

Java 프로그래밍 컨텍스트에서모델은 간단한 자바 클래스 ,보기는 데이터를 표시하고 컨트롤러는 . 이러한 분리로 인해 사용자 요청이 다음과 같이 처리됩니다.



  1. 클라이언트의 브라우저는 서버에있는 컨트롤러에 페이지 요청을 보냅니다.
  2. 컨트롤러는 모델을 호출하는 작업을 수행하여 요청에 대한 응답으로 필요한 데이터를 검색합니다.
  3. 그런 다음 컨트롤러는 검색된 데이터를 뷰에 제공합니다.
  4. 뷰가 렌더링되고 브라우저가 표시 할 수 있도록 클라이언트로 다시 전송됩니다.

소프트웨어 응용 프로그램을 다음으로 분리이 세 가지 다른 구성 요소는 여러 가지 이유로 좋은 생각입니다. 그것들이 무엇인지 살펴 보겠습니다.

Java에서 MVC 아키텍처의 장점

MVC 아키텍처는 응용 프로그램을 개발할 때 프로그래머에게 다음과 같은 많은 이점을 제공합니다.

  • 여러 개발자가 동시에 세 계층 (모델,보기 및 컨트롤러)으로 작업 할 수 있습니다.
  • 개선 된 제안 확장 성 , 응용 프로그램의 성장 능력을 보완합니다.
  • 구성 요소가 서로에 대한 종속성이 낮기 때문에 유지 관리가 쉽습니다.
  • 코드의 재사용 성을 제공하는 여러보기에서 모델을 재사용 할 수 있습니다.
  • MVC를 채택하여 응용 프로그램을보다 표현적이고 이해하기 쉽게 만듭니다.
  • 응용 프로그램의 확장 및 테스트가 쉬워집니다.

이제 MVC가 가장 인기있는 이유를 알았습니다. 웹 프로그래밍 세계에서. 하지만 여전히 MVC 개념을 이해하는 데 어려움을 겪고 있다면 걱정하지 마십시오. 우리는 이러한 각 계층을 깊이 파고 들어서 그 목적을 배우고 .

Java를 사용한 MVC 구현

MVC 디자인 패턴을 기반으로 웹 애플리케이션을 구현하기 위해

  • 코스 클래스 , 역할을하는 모델 레이어
  • CourseView 클래스 , 프리젠 테이션 레이어 ( 뷰 레이어 )
  • CourseContoller 클래스 , 역할을하는 제어 장치

이제 이러한 레이어를 하나씩 살펴 보겠습니다.

파이썬 코드의 로지스틱 회귀

모델 계층

MVC 디자인 패턴에서 모델 시스템의 비즈니스 로직을 정의하고 애플리케이션의 상태를 나타내는 데이터 레이어입니다.모델 사물 데이터베이스에서 모델의 상태를 검색하고 저장합니다. 이 계층을 통해 데이터에 규칙을 적용하여 결국 애플리케이션에서 관리하는 개념을 나타냅니다. 이제 다음을 사용하여 모델을 만들어 보겠습니다. 코스 클래스.

package MyPackage public class Course {private String CourseName private String CourseId private String CourseCategory public String getId () {return CourseId} public void setId (String id) {this.CourseId = id} public String getName () {return CourseName} public void setName (문자열 이름) {this.CourseName = 이름} public String getCategory () {return CourseCategory} public void setCategory (String category) {this.CourseCategory = category}}

코드는 이해하기 쉽고 자명합니다. 코스 세부 정보를 가져 오거나 설정하는 기능으로 구성됩니다.

뷰 레이어

MVC 디자인 패턴의이 레이어는 애플리케이션 또는 사용자 인터페이스의 출력을 나타냅니다. 컨트롤러가 모델 레이어에서 가져온 데이터를 표시하고 요청이있을 때마다 사용자에게 데이터를 제공합니다. 나는컨트롤러로부터 필요한 모든 정보를 수신하고 비즈니스 계층과 직접 상호 작용할 필요가 없습니다.다음을 사용하여보기를 만들어 보겠습니다. CourseView 클래스.

package MyPackage public class CourseView {public void printCourseDetails (String CourseName, String CourseId, String CourseCategory) {System.out.println ( 'Course Details :') System.out.println ( 'Name :'+ CourseName) System.out.println ( 'Course ID :'+ CourseId) System.out.println ( 'Course Category :'+ CourseCategory)}}

이 코드는단순히 값을 콘솔에 인쇄합니다. 다음으로 웹 애플리케이션의 컨트롤러가 있습니다.

컨트롤러 계층

Controller는 Model과 View 사이의 인터페이스와 같습니다. 뷰 레이어에서 사용자 요청을 수신하고 필요한 유효성 검사를 포함하여 처리합니다. 그런 다음 요청은 데이터 처리를 위해 모델로 전송됩니다. 처리가 완료되면 데이터가 다시 컨트롤러로 전송 된 다음보기에 표시됩니다.만들자 CourseContoller 클래스 컨트롤러 역할을합니다.

자바 스크립트에서 경고를 사용하는 방법
package MyPackage public class CourseController {private Course model private CourseView view public CourseController (Course model, CourseView view) {this.model = model this.view = view} public void setCourseName (String name) {model.setName (name)} public String getCourseName () {return model.getName ()} public void setCourseId (String id) {model.setId (id)} public String getCourseId () {return model.getId ()} public void setCourseCategory (String category) {model.setCategory (category)} public String getCourseCategory () {return model.getCategory ()} public void updateView () {view.printCourseDetails (model.getName (), model.getId (), model.getCategory ())}}

코드를 대략적으로 살펴보면이 컨트롤러 클래스가 모델을 호출하여 데이터를 가져 오거나 설정하고이를 기반으로 뷰를 업데이트하는 역할 만 담당한다는 것을 알 수 있습니다. 이제이 모든 것이 어떻게 연결되어 있는지 살펴보십시오.

메인 자바 클래스

이 클래스를 'MVCPatternDemo.java'라고합시다. 아래 코드를 확인하세요.

package MyPackage public class MVCPatternDemo {public static void main (String [] args) {// 데이터베이스에서 자신의 롤 번호를 기반으로 학생 기록 가져 오기 Course model = retriveCourseFromDatabase () //보기 만들기 : 콘솔 CourseView보기에 과정 세부 정보 쓰기 = new CourseView () CourseController 컨트롤러 = new CourseController (model, view) controller.updateView () // 모델 데이터 업데이트 controller.setCourseName ( 'Python') System.out.println ( 'n 업데이트 후 과정 세부 정보는 다음과 같습니다') controller.updateView ()} private static Course retriveCourseFromDatabase () {Course course = new Course () course.setName ( 'Java') course.setId ('01 ') course.setCategory ('Programming ') return course}}

위의 클래스에서 코스 데이터를 가져옵니다. 어떤 사용자가 값 세트를 입력하는지 사용합니다. 그런 다음 해당 값을 코스 모델로 푸시합니다. 그런 다음 기사의 앞부분에서 만든 뷰를 초기화합니다.또한 CourseController 클래스에 바인딩하고 강좌 클래스와 CourseView 수업. 그만큼 updateView () 컨트롤러의 일부인 메소드는 콘솔에서 코스 세부 사항을 업데이트합니다. 아래 출력을 확인하십시오.

산출

과정 세부 정보 : 이름 : Java 과정 ID : 01 과정 범주 : 프로그래밍 업데이트 후 과정 세부 정보는 다음과 같습니다. 과정 세부 정보 : 이름 : Python 과정 ID : 01 과정 범주 : 프로그래밍

MVC 아키텍처코드에 완전히 새로운 수준의 모듈성을 제공하여 훨씬 더 읽기 쉽고 유지 관리가 용이합니다. 이것으로이 기사의 끝으로 이동합니다.여러분과 공유 된 모든 내용이 명확하기를 바랍니다.

가능한 한 많이 연습하고 경험을 되 돌리십시오.

확인 전 세계에 250,000 명 이상의 만족 한 학습자 네트워크를 보유한 신뢰할 수있는 온라인 학습 회사 인 Edureka에서 우리는 여정의 모든 단계에서 귀하를 돕기 위해 여기에 있으며 Java 개발자가 되고자하는 학생과 전문가를 위해 설계된 커리큘럼을 마련했습니다.

질문이 있으십니까? 이 '자바의 MVC 아키텍처'의 주석 섹션에 언급하십시오. 기사와 우리는 가능한 한 빨리 당신에게 돌아갈 것입니다.