MVC 패턴
모델 MVC 모델은 모델 - 뷰 - 컨트롤러 (-보기 - 컨트롤러 모델)을 나타냅니다. 이 모드는 계층 애플리케이션 개발에 사용된다.
- 모델 (모델) - 모델은 데이터 액세스 개체 또는 JAVA POJO를 나타냅니다.또한 로직, 업데이트 컨트롤러 데이터 변경 사항을 수행 할 수있다.
- 보기 (보기) - 뷰 모델 시각화의 대표가 포함되어 있습니다.
- 컨트롤러 (컨트롤러) - 컨트롤러 역할 모델에에 볼 수 있습니다.이는 데이터 흐름 모델 객체를 제어하고 뷰 데이터 변경을 갱신. 그것은 분리 된 뷰와 모델을 만든다.
실현
우리는학생 개체모델을 생성합니다.StudentView 세부사항은클래스,StudentController는학생 객체컨트롤러 클래스에 데이터를 저장하기위한 책임이 볼 콘솔에 출력의 학생, 그리고보기StudentView를 업데이트합니다.
MVCPatternDemo,우리는 MVC 패턴의 사용을 설명하기StudentController 클래스의사용을 입증한다.
1 단계
모델을 만듭니다.
Student.java
공용 클래스 학생 { 개인 문자열 rollNo; 개인 문자열 이름; 공공 문자열 getRollNo () { rollNo를 반환; } 공공 무효 setRollNo (문자열 rollNo) { this.rollNo = rollNo; } 공공 문자열 getName () { 이름을 반환; } 공공 무효에서는 setName (문자열 이름) { this.name = 이름; } }
2 단계
보기를 만듭니다.
StudentView.java
공용 클래스 StudentView { 공공 무효 printStudentDetails (문자열 studentName, 문자열 studentRollNo) { 에서 System.out.println ( "학생 :"); 에서 System.out.println ( "이름"+ studentName); 에서 System.out.println ( "롤 번호 :"+ studentRollNo); } }
3 단계
컨트롤러를 만듭니다.
StudentController.java
공용 클래스 StudentController { 개인 학생 모델; 개인 StudentView보기; 공공 StudentController (학생 모델, StudentView보기) { this.model = 모델; this.view =보기; } 공공 무효 setStudentName (문자열 이름) { model.setName (이름); } 공공 문자열 getStudentName () { () model.getName를 반환; } 공공 무효 setStudentRollNo (문자열 rollNo) { model.setRollNo (rollNo); } 공공 문자열 getStudentRollNo () { () model.getRollNo를 반환; } 공공 무효 updateView () { view.printStudentDetails (model.getName () model.getRollNo ()); } }
4 단계
MVC 디자인 패턴의 사용을 설명하기StudentController 방법을 사용합니다.
MVCPatternDemo.java
공용 클래스 MVCPatternDemo { 공공 정적 무효 메인 (문자열 []에 args) { // 학생 기록 학생 모델을 얻을 수 = retriveStudentFromDatabase () 데이터에서; // 뷰를 만듭니다 콘솔 학생 정보 StudentView보기로 출력 = 새로운 StudentView를 (); StudentController 컨트롤러 = 새로운 StudentController (모델, 뷰); controller.updateView (); // 업데이트 모델 데이터 controller.setStudentName ( "존"); controller.updateView (); } 개인 정적 학생 retriveStudentFromDatabase () { 학생 학생 = 새로운 학생 (); student.setName ( "로버트"); student.setRollNo ( "10"); 학생을 반환; } }
5 단계
출력을 확인합니다.
학생 : 이름 : 로버트 어떤 롤하지 : 10 학생 : 이름 : 존 어떤 롤하지 : 10