简单理解一下MVC和三层架构

MVC

说到mvc我们就要谈及java web的发展历程:

首先,一开始的java是应用在servlet端的,而servlet是运行在服务器端的逻辑程序,但是web应用肯定是需要有页面的,因此此时的java web就形成了servlet > java + HTML +CSS + javascipt。

但是后来发现这样写会导致十分的不方便,修改代码的话需要频繁的重启服务器。

因此,有出现了新的技术JSP。

JSP将HTML+CSS这些前端代码分离出去,因此修改页面后不需要重启服务器,只要刷新浏览器即可,同时又支持在jsp页面中编写java代码,正因为如此方便,导致后面都不用servlet,直接将逻辑,jdbc端都写在jsp页面。

但但是后面发现这样也不行,因为大量的java、HTML、CSS,JS代码耦合在一起,后期想剥离一部分代码都十分麻烦。

直到MVC模式的出现,它将我们的代码强制性的分成:model + view +controller

controller(控制层)

控制我们数据的流向,在web应用中可以说就是接口端

View(视图层)

提供给用户视图界面,也就是负责HTML + CSS

Model(模型层)

这里的模型分两类:数据模型和UI模型

数据模型就是实体类

UI模型就是逻辑

三层架构

有很多人会将MVC认为就是三层架构,其实不然。

三层架构模式是一种纯java的架构模式,没有页面视图这种东西。

三层架构:controller + service + dao

controller(控制层)

控制数据的流向,例如将数据从控制台打印或者将数据存储到另外的地方,因此就起了一个调度的作用。

service(服务层)

负责代码的逻辑。

dao(持久层)

与数据打交道,比例数据库,文件。

你可能感兴趣的:(日常所感,java,web,mvc,架构)