设计模式之MVC模式

MVC模式是java设计模式的一员,它由三个结构组成,M(model 模型)负责数据的存和取,在我的理解上是用于表达数据的类。V(view 视图)负责模型的可视化操作,如果M是用来表达数据的类,则V就是将这些模型转换成用户能够直观感受和操作的界面。C(controller 控制器)负责控制数据的流动,顾名思义,用户对数据进行读或写时控制器进行控制数据的存和取,以及视图的更新。
它的实现方式就是根据这三个结构创建这三种关系的类,即模型类,视图类,控制类。
例如:
模型类:

/**
 *    模型
 * /

public class Studentmodel {

private Integer id;
private String name;  
private String sex;

public Integer getId() {
    return id;
}

public void setId(Integer id) {
    this.id = id;
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public String getSex() {
    return sex;
}

public void setSex(String sex) {
    this.sex = sex;
}
}

视图类:

  /**
   * 视图
   */
public class Studentview {
    public void studentview(Integer sid,String sname,String ssex){
       System.out.println("当前学生信息如下");
       System.out.println("学生id为:"+sid);
       System.out.println("学生姓名为:"+sname);
       System.out.println("学生性别为:"+ssex);
    }
 }

控制类:

 /**
   * 控制器
   */
  public  class  StudentController {  
``
     private Studentmodel model;
     private Studentview view;
     
    public StudentController(Studentmodel model, Studentview view){
        this.model = model;
        this.view = view;
    }

    public void setStudentId(Integer id){
        model.setId(id);
    }

    public Integer getStudentId(){
        return model.getId();
    }

    public void setStudentName(String name){
        model.setName(name);
    }

    public String getStudentName(){
        return model.getName();
    }

    public void setStudentSex(String sex){
        model.setSex(sex);
    }

    public String getStudentSex(){
        return model.getSex();
    }

    public void updateView(){
        view.studentview(model.getId(),model.getName(), model.getSex());
    }
  }

启动类:

/**
 * 启动器
 */
public class StudnetrApp {
    private static Studentmodel studnet(){
        Studentmodel studentmodel=new Studentmodel();
        studentmodel.setId(1);
        studentmodel.setName("张三");
        studentmodel.setSex("男");
        return studentmodel;
    }
    public static void main(String[] args){
        //模拟使用模型调用student数据库
        Studentmodel studentmodel=studnet();
        //创建视图
        Studentview studentview=new Studentview();
        //创建控制器
        StudentController studentController=new StudentController(studentmodel,studentview);
        //使用控制器控制模型的数据流向视图
        studentController.updateView();
        //使用控制器更改模型中id的数据
        studentController.setStudentId(2);
        //使用控制器更新视图
        studentController.updateView();
    }
}

运行结果:

当前学生信息如下
学生id为:1
学生姓名为:张三
学生性别为:男
当前学生信息如下
学生id为:2
学生姓名为:张三
学生性别为:男

这就是是设计模式中的MVC模式

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值