zoukankan      html  css  js  c++  java
  • MVC介绍

      在这学期匆匆忙忙的学完SSH三大框架以后,也是颇有感触。通过比较来看的话,SSH可以看做一种工具,用封装好的类来使我们的代码更便于的维护,来适应团队的开发。而MVC相比较SSH而来,可以看做一种编程的思想,一种架构模型。他不想SSH那样要引入jar包,引入功能。而是通过指导我们改善我们的应用程序架构,使得应用的模型和视图相分离,从而得到更好的开发和维护效率。

      为什么会出现MVC呢?据说在早期开发中,程序结构划分不明确,各个部分功能混乱,在业务功能发生变更时,无论是业务逻辑修改还是显示形式修改,都要修改很多的类,“牵一发而动全身”,导致软件的开发和维护效率低下,错误百出。而MVC模式来开发系统,就会极大的避免上述问题的出现。MVC模式的核心手段是解耦,MVC模式通过仔细的划分功能,把整个应用程序划分成模型、视图、控制器三个部分,然后严密控制三个部分之间的通信,从而得到一个结构清晰、功能分布合理、可重用、可扩展、可维护的应用程序

      首先在MVC模式中,我们要知道,什么事MVC?其中M是模型(Model)、V是视图(View),C 是控制器(Controller),这三部分组成了我们的MVC。

      模型(Model):负责封装应用的状态,并实现应用的功能。通常又分为数据模型和业务逻辑模型,数据模型用来存放业务数据,比如订单信息、用户信息等;而业务逻辑模型包含应用的业务操作,比如订单的添加或者修改等

      视图(View):通俗的来讲,就是界面,包括界面上的按钮图片等用户看的道德东西,用来将模型的内容展现给用户,用户可以通过这些来请求模型进行更新。比如用户在界面上操作或者填写完成后,会点击提交按钮或是以其它触发事件的方式,来向控制器发出请求。

      控制器(Controller):用来控制应用程序的流程和处理视图所发出的请求。当控制器接收到用户的请求后,会将用户的数据和模型的更新相映射,也就是调用模型来实现用户请求的功能;然后控制器会选择用于响应的视图,把模型更新后的数据展示给用户。

     

     

    Java Web解决方案(开发方法)

     1.      JSP+JavaBean开发模式:

    特点:该模式将业务逻辑与页面表现进行分离,在一定程度上增加了程序的可调试性和维护性。

    缺点:页面将控制与显示集于一身。

    结论:简单,适合小型项目的快速构建与运行。

     2.      JSP+Servlet+JavaBean开发模式:

    特点:JSP作为视图,来表现页面;Servlet作为控制器,控制程序的流程并调用业务进行处理;JavaBean封装了业务逻辑。遵循了MVC设计模式。

    缺点:没有统一的开发框架导致开发周期长。

     

     MVC的组件关系图描述了模型、视图、控制器这三个部分的交互关系,下面我仅通过《xx省xxx信息征集系统》来说明简单的说说这个,这个系统的目的是为了通过一个表格来征集用户所填写的信息,用户通过填写表格来提交给后台的服务器:

    (1)首先是展示视图给用户,这个视图就是用户索要填写的表格,还有提交按钮等东西

    (2)用户填写完所有的信息后会点击提交按钮,来发出提交的请求

    (3)视图发出的用户提交请求会到达控制器,在请求中包含了想要提交功能以及要进行提交的的数据。

    (4)控制器会来处理这个提交请求,会把提交请求中的数据进行封装,然后选择并调用合适的模型,请求模型进行状态更新,然后选择接下来要展示给用户的视图。

    (5)模型会去处理用户请求的业务功能,同时进行模型状态的维护和更新

    (6)当模型状态发生改变的时候,模型会通知相应的视图,告诉视图它的状态发生了改变。

    (7)视图接到模型的通知后,会向模型进行状态查询,获取需要展示的数据,然后按照视图本身的展示方式,把这些数据展示出来。

     

  • 相关阅读:
    ubuntu
    eclipse 链接 hadoop
    javaweb访问hdfs的一些错误
    eclipse
    ubuntu
    ubuntu
    ubuntu
    ubuntu 安装 mysql
    光源选择
    C#脱离Halcon编程开发环境使用方法
  • 原文地址:https://www.cnblogs.com/sanzangtdashi/p/6750238.html
Copyright © 2011-2022 走看看