MVC和MV的区别

spring boot的MVC 和Django的MTV的区别

(一) spring boot的MVC

M -> Model(模型) 用于封装与应用程序业务逻辑相关的数据及数据处理方法,是web应用程序中用于处理应用程序的数据逻辑部分,Modle通常只提供功能性接口,通过该接口可以获得Modle所有功能。Modle其实就是负责数据持久化到数据库。
V-> View(视图) 负责用户端请求,可以看成反向功能,主要处理用户交互。View承载数据逻辑。
C -> Controller(控制器) 负责从用户端收集用户输入,可以看成提供View方向功能,主要处理用户交互。
MVC设计模式是一种软件设计的典范,用一种业务逻辑,使数据,界面线束分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面与用户交互的同时,不需要重新编写新的业务逻辑。
MVC被独特的发展起来用于映射传统的输入,处理输出功能在一个逻辑的图形化界面中。
MVC核心思想就是解耦。
MVC优点:降低各模块之间的耦合性,方便变更,更容易重构代码,最大程度实现了代码的重用。

MVC和MV的区别

(二) Django的MTC

M -> Model(模型) 数据存取层
该层处理与数据相关的所有事务: 如何存取、如何验证有效,是一个抽象层,用来构建和操作你的web应用中的数据,模型是你的数据的唯一的、权威的信息源。它包含你所储存数据的必要字段和行为。通常,每个模型对应数据库中唯一的一张表。
T -> Templates(模板)即表现层
该层处理与表现相关的决定: 如何在页面或其他类型文档中进行显示。模板层提供了设计友好的语法来展示信息给用户。使用模板方法可以动态地生成HTML。模板包含所需HTML 输出的静态部分,以及一些特殊的语法,描述如何将动态内容插入。
V-> View(视图) 业务逻辑层
该层包含存取模型及调取恰当模板的相关逻:用于封装负责处理用户请求及返回响应的逻辑。视图可以看作是前端与数据库的中间人,他会将前端想要的数据从数据库中读出来给前端。他也会将用户要想保存的数据写到数据库。
此外,Django还有一个urls分发器,它的作用是将一个个URL的页面请求分发给不同的view处理,view再调用相应的Model和Template
MVC和MV的区别

(三)区别

本质上来说MVC和MTV没什么差别,也是各组件之间为了保持松耦合关系,只是定义上有些与不同。(MTV模式中T对应V,MVC模式中V对应C)

上一篇:一个简单的mybatis案例


下一篇:Linux下mv和cp命令的区别