应用程序分层开发模式----MVC

应用程序分层开发模式----MVC

1. 了解MVC模式

Spring Boot开发WEB 应用程序主要使用MVC模式。MVC是Model(模型)、View(视图)、Controller(控制器)的简写。

1 	Model:是java的实体Bean,代表存取数据的对象或POJO( Plain Ordinary Java Objects , 简单的Java对象),也可以带有逻辑。其作用是在内存中暂时存储数据,并在数据变化时更新控制器(如果要持久化,则需要把它写入数据库或者磁盘文件中)。
2 	View: 主要用来解析、处理、显示内容,并进行模板的渲染。
3 Controller:主要用来处理视图中的响应。他解决如何调用Model(模型)的实体Bean、如何调用业务层的数据增加、删除、修改和查询等业务操作,以及如何将结果返回给视图进行渲染。建议在控制器中尽量不要放逻辑代码。
  这样分层的好处是:将应用程序的用户界面和业务逻辑分离,使得代码具备良好的可扩展性、可复用性、可维护性和灵活性。
 

如果不想使用MVC开发模式也可以的,MVC只是一个合理的规范。其关系如下图:
在这里插入图片描述
如果你对MVC理解的不是很深入,那么往往会以用户通过浏览器访问MVC模型的页面就是访问视图(View)。实际上,它并不是直接访问视图,而是访问DispatcherServlet处理的映射和调用视图渲染,然后返回给用户的数据。
在整个Spring MVC框架中,DispatcherServlet处于核心位置,继承自HttpServlet。它负责协调和组织不同组件,以完成请求处理并返回响应工作。
整个流程如下:

1.	客户端(用户)发送的请求有Tomcat(服务器)接收,然后Tomcat将请求转交给DispatcherServlet处理。
2.	DispatcherServlet匹配控制器中配置的映射路径,进行下一步处理。
3.	ViewResolver将ModelAndView或Exception解析成View。然后View会调用render()方法,并根据ModelAndView中的数据渲染出页面。

在MVC开发模式中,容易混淆的还有Model,它往往会被认为是业务逻辑层或DAO层。这种理解并不能说是错误的,但并不是严格意思上的MVC模式。

2. MVC和三层架构的关系

三层架构,就是将整个应用程序划分为表现层(UI)、业务逻辑层(Service)、数据访问层(DAO/Repository)。

1.	表现层:用于展示界面。主要对用户的请求进行接收,以及进行数据的访问。它为客户端(用户)提供应用程序的访问接口(界面)。
2.	业务逻辑层:是三层架构的服务层,负责业务逻辑处理,主要是调用DAO层对数据进行增加、删除、修改和查询等操作。
3	数据访问层:与数据库进行交互的持久层,被service调用。在Spring Data JPA中由Hibernate来实现。

在这里插入图片描述
严格地说,MVC是三层架构中的UI层。通过MVC把三层架构中的UI层又进行分层。
由此可见,三层架构是基于业务逻辑或功能来划分的,而MVC是基于页面或功能来划分的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值