MVC

什么是MVC

MVC是一种软件架构模式,把软件系统分为三个部分,即Model(模型)、View(视图)和Controller(控制),实现了Model和View的分离。几乎适用于所有B/S架构

组成结构

Model

最底下的一层,是核心的"数据层"(Model),也就是程序需要操作的数据或信息。
目的是实现一种动态的程序设计,使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能

View

最上面的一层,是直接面向最终用户的"视图层"(View)。它是提供给用户的操作界面,是程序的外壳。

Controller

中间的一层,就是"控制层"(Controller),它负责根据用户从"视图层"输入的指令,选取"数据层"中的数据,然后对其进行相应的操作,产生最终结果。

特点

优点

  • 耦合性低
    视图层和业务层分离,这样就允许更改视图层代码而不用重新编译模型和控制器代码,同样,一个应用的业务流程或者业务规则的改变只需要改动MVC的模型层即可。因为模型与控制器和视图相分离,所以很容易改变应用程序的数据层和业务规则。

  • 重用性高
    MVC模式允许使用各种不同样式的视图来访问同一个服务器端的代码,因为多个视图能共享一个模型。

  • MVC使开发和维护用户接口的技术含量降低。
    MVC使开发和维护用户接口的技术含量降低。

  • 系统设计思路清晰,可维护性高
    使用MVC模式使开发时间得到相当大的缩减,它使程序员(Java开发人员)集中精力于业务逻辑,界面程序员(HTML和JSP开发人员)集中精力于表现形式上。分离视图层和业务逻辑层也使得WEB应用更易于维护和修改。

缺点

  • 不适合小型中等规模的应用程序(因为对应功能简单,没有必要这么复杂)

产生原因

在最初的JSP网页中,像数据库查询语句(SQL query)这样的数据层代码和像HTML这样的表示层代码是混在一起。虽然有着经验比较丰富的开发者会将数据从表示层分离开来,但这样的良好设计通常并不是很容易做到的,实现它需要精心地计划和不断的尝试。MVC可以从根本上强制性地将它们分开。尽管构造MVC应用程序需要一些额外的工作,但是它带给我们的好处是毋庸置疑的。

应用

  • 在javaweb中
    • Model:自己写的代码(javabean)
    • View:JSP
    • Controller:Servlet
      这里写图片描述

参考文献
http://www.ruanyifeng.com/blog/2007/11/mvc.html —MVC模式
https://zh.wikipedia.org/wiki/MVC —MVC模式
https://baike.baidu.com/item/MVC框架/9241230?fromtitle=mvc&fromid=85990#6 —MVC模式

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值