分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 教程案例

MVC模式

发布时间:2023-09-06 01:43责任编辑:白小东关键词:MVC

MVC模式代表 Model-View-Controller(模型-视图-控制器) 模式。这种模式用于应用程序的分层开发。

  • Model(模型) - 模型代表一个存取数据的对象或 JAVA POJO。它也可以带有逻辑,在数据变化时更新控制器。
  • View(视图) - 视图代表模型包含的数据的可视化。
  • Controller(控制器) - 控制器作用于模型和视图上。它控制数据流向模型对象,并在数据变化时更新视图。它使视图与模型分离开。

实现

我们将创建一个作为模型的 Student 对象。StudentView 是一个把学生详细信息输出到控制台的视图类,StudentController 是负责存储数据到 Student 对象中的控制器类,并相应地更新视图 StudentView

MVCPatternDemo,我们的演示类使用 StudentController 来演示 MVC 模式的用法。

步骤 1

创建模型。

Student.java

package mvc;public class Student { ???private String rollNo; ??????private String name; ??????public String getRollNo() { ?????????return rollNo; ??????} ??????public void setRollNo(String rollNo) { ?????????this.rollNo = rollNo; ??????} ??????public String getName() { ?????????return name; ??????} ??????public void setName(String name) { ?????????this.name = name; ??????}}

步骤 2

创建视图。

StudentView.java

package mvc;public class StudentView { ???public void printStudentDetails(String studentName, String studentRollNo){ ?????????System.out.println("Student: "); ?????????System.out.println("Name: " + studentName); ?????????System.out.println("Roll No: " + studentRollNo); ??????}}

步骤 3

创建控制器。

StudentController.java

package mvc;public class StudentController { ???private Student model; ??????private StudentView view; ??????public StudentController(Student model, StudentView view){ ?????????this.model = model; ?????????this.view = view; ??????} ??????public void setStudentName(String name){ ?????????model.setName(name); ??????????????} ??????public String getStudentName(){ ?????????return model.getName(); ??????????????} ??????public void setStudentRollNo(String rollNo){ ?????????model.setRollNo(rollNo); ??????????????} ??????public String getStudentRollNo(){ ?????????return model.getRollNo(); ??????????????} ??????public void updateView(){ ?????????????????????????view.printStudentDetails(model.getName(), model.getRollNo()); ??????} ???}

步骤 4

使用 StudentController 方法来演示 MVC 设计模式的用法。

MVCPatternDemo.java

package mvc;/** * ?* @author caoyy * */public class MVCPatternDemo { ???public static void main(String[] args) { ?????????//从数据可获取学生记录 ?????????Student model ?= retriveStudentFromDatabase(); ?????????//创建一个视图:把学生详细信息输出到控制台 ?????????StudentView view = new StudentView(); ?????????StudentController controller = new StudentController(model, view); ?????????controller.updateView(); ?????????//更新模型数据 ?????????controller.setStudentName("John"); ?????????controller.updateView(); ?????????controller.setStudentRollNo("20"); ?????????controller.updateView(); ??????} ??????private static Student retriveStudentFromDatabase(){ ?????????Student student = new Student(); ?????????student.setName("Robert"); ?????????student.setRollNo("10"); ?????????return student; ??????}}

步骤 5

验证输出。

Student: Name: RobertRoll No: 10Student: Name: JohnRoll No: 10Student: Name: JohnRoll No: 20

MVC模式

原文地址:https://www.cnblogs.com/vcyy/p/8460314.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved