Web MVC模式

Web MVC中的M(模型)-V(视图)-C(控制器) 标准架构:

MVC详解

MVC模式是一种分离业务逻辑和显示逻辑的设计模式,

好处:Controller专注于业务处理,它的处理结果就是Model。Model可以是一个JavaBean,也可以是一个包含多个对象的Map,Controller只负责把Model传递给View,View只负责把Model给“渲染”出来,

注意点: 用户想要视图更新,模型无法主动推数据给视图, 用户需要再发送一次请求(即请求-响应模型)

1. Model 模型:管理这个模块中用的数据和值(bean,dao

JavaBeans :Java中一种特殊的类(换言之:JavaBean就是一个Java类).

从使用层面来看,JavaBean分为2大类:
a. 封装业务逻辑的JavaBean(eg:LoginDao.java 封装了登录逻辑)
b. 封装数据的JavaBean(实体类:egStudent.java Vadio.java 。往往对应于数据库中的一张表,即数据库中有个Student表,项目中就有个Student.java)通常:表名=类名,列名=属性名


JavaBean是一个可以重复使用的组件,通过编写一个组件来实现某种通用功能,一次编写、任何地方执行、任何地方重用

2. View 视图:  视图提供模型的展示,管理模型如何显示给用户,它是应用程序的外观;(jsp/html

3. Controller 控制器: 对用户的输入做出响应,管理用户和视图的交互,是连接模型和视图的枢纽。(servlet/service

 

三层架构

三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。

区分层次的目的即为了高内聚,低耦合的思想。


表现层(UI):展示界面,即使用一个系统的时候的所见所得。 jsp/html 。代表作品是Struts,springmvc框架 
业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。servlet,service ,代表作品是Spring 
数据访问层(DAL):该层所做事务直接操作数据库,针对数据的增添、删除、修改、更新、查找等。dao ,代表作品是Hibernate,mybatis 

三层架构是典型的架构模式(Architecture Pattern),MVC是表现模式(Presentation Pattern

三层架构一般是表现层、中间层、数据层, 上层依赖于下层。但MVC作为表现模式是不存在上下关系的,而是相互协作关系。

三层架构是基于业务逻辑来分的,而MVC是基于页面来分的。

MVC把三层架构中的UI层再度进行了分化,分成了控制器 (Controller)、视图(View)、实体(Model)三个部分,控制器完成页面逻辑,通过实体来与界面层完成通话;而控制器层直接与三层中的BLL进行对话 。

 

实际代码

Controller层:

web:Servlet代码

service:业务逻辑代码,供Servlet调用

Model层:

dao:数据库操作代码,先写接口后写实现类

bean:实体类

util:工具类

 

 前后端分离:浏览器和后台只使用JSON交互

 

 SpringMVC替代Servlet处理请求和响应过程

MVC流程

拦截器流程

代码关系

原文地址:https://www.cnblogs.com/WindyZ/p/13935571.html