什么是mvc设计模式 (附代码示例)
什么是mvc设计模式,举一个mvc设计模式的例子。
答:mvc设计模式是用模型/试图/控制器三元组用来构建用户界面。一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
例子:存在三种对象:学生,教师,管理员;分别能实现登录,教师能实现注册;教师能对学生进行删除修改等操作,管理员可查看所有信息等权限。
m:为与项目有关所创建的对象和类,如学生类。
v:用户所看到的界面。
c:后台控制,实现对不同的对象有不同的权限操作信息
学生类(M):
publicclassStudent{
privateStringrollNo;
privateString name;
publicStringgetRollNo(){
return rollNo;
}
publicvoid setRollNo(String rollNo){
this.rollNo= rollNo;
}
publicStringgetName(){
return name;
}
publicvoid setName(String name){
this.name= name;
}
}
视图(V)
publicclassStudentView{
publicvoid printStudentDetails(String studentName,String studentRollNo){
System.out.println("Student: ");
System.out.println("Name: "+ studentName);
System.out.println("Roll No: "+ studentRollNo);
}
}
控制器(C)
publicclassStudentController{
privateStudent model;
privateStudentView view;
publicStudentController(Student model,StudentView view){
this.model= model;
this.view= view;
}
publicvoid setStudentName(String name){
model.setName(name);
}
publicString getStudentName(){
return model.getName();
}
publicvoid setStudentRollNo(String rollNo){
model.setRollNo(rollNo);
}
publicString getStudentRollNo(){
return model.getRollNo();
}
publicvoid updateView(){
view.printStudentDetails(model.getName(), model.getRollNo());
}
}
什么是mvc设计模式 (附代码示例)相关推荐
- torch.bernoulli 的使用方法(附代码示例)
torch.bernoulli 的使用方法(附代码示例) 功能解释 参数 代码示例 功能解释 *torch.bernoulli(input, , generator=None, out=None) → ...
- Spring源码深度解析,Spring源码以及Bean的生命周期(五)(附代码示例:)
五)Bean 的生命周期,创建---初始化---销毁的过程 目录 五)Bean 的生命周期,创建---初始化---销毁的过程 一 , 指定初始化方法 init-method 方法 二 ,指定销毁 ...
- 设计模式——七大原则(附代码示例)
一. 设计模式概念 对接口编程而不是对实现编程:优先使用对象组合而不是继承 二. 设计模式总览 1. 创建型模式(Creational Patterns):(5) 单例(Singlet ...
- 设计模式——中介者模式(附代码示例)
一. 传统方式 以闹铃响起--咖啡机开始做咖啡--窗帘自动落下--电视机开始播放为例 1. 传统方式解决 创建各个相关类,且各类中彼此联系,最后直接在Client中按照流程执行各类方法 2. 传统方式 ...
- 设计模式——迭代器模式(附代码示例)
一. 传统方式 以学校院系展示为例,实现在一个页面展示学校的院系组成,一个学校有多个学院,一个学院有多个系.传统方式实现类图如下: 传统方式将学院看做是学校的子类,系是学院的子类,这样实际上是站在组织 ...
- 设计模式——代理模式(附代码示例)
一. 代理模式 1. 概念 代理模式为一个对象提供一个替身,以控制对这个对象的访问.即通过代理对象访问目标对象.这样做的好处是可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能.被代 ...
- 设计模式——职责链模式(附代码示例)
一. 传统方式 以学校采购审批为例,不同金额的采购需要不同人员的审批 1. 传统方式解决 收到请求后,通过不同的金额调用对应的审批方法 2. 传统方式存在问题 Client会使用到分支判断(比如swi ...
- 设计模式——享元模式(附代码示例)
一. 传统方式 以网站项目展示为例,有的要求以新闻形式发布,有的要求以博客形式发布,有的要求以微信公众号形式发布 1. 传统方式解决 给每个网站租用一个空间,直接复制粘贴一份,然后根据客户不同要求,进 ...
- 设计模式——适配器模式(附代码示例)
一. 适配器模式 1. 概念 适配器模式(Adapter Rattern)将某个类的接口转换成客户端期望的另一个接口表示,主的目的是兼容性,让原本因接口不匹配不能一起工作的两个类可以协 ...
最新文章
- 远程桌面解决(面对不同问题)连接办法
- getdc 与getwindowDc的区别,loadbitmap 与loadimage的区别
- k8s给default serviceaccount绑定cluster-admin操作命令
- Java技术分享:什么是数据库连接池?
- 内置的常用协议实现模版
- 注释,今晚我不关心代码,我只想你
- 【树莓派】树莓派(Debian)- root用户无法使用SSH登录
- layui select下拉框选项不显示
- 取本周日期 C# .net
- HTML DOM nodeName nodeValue
- 在线下单系统php源码,PIMS在线订单管理系统v4.2.9
- java 读取换行_Java中的换行字符读取 - java
- ttest求pvalue_关于ttest里的P值
- springboot 多任务并行执行
- 1分钟教会你如何视频转文字,简单又实用
- python控制ppt翻页_详解Python操作PPT的各种骚操作!
- Mac安装brew/yum
- 网页调用 iOS/Android 客户端
- 农村商业银行服务器未收到证书,不及时更新“证书” 当心网银U盾失效
- 【软考】 5 计算机网络