JavaWeb快速入门 MVC架构&三层架构

目录

一、MVC的发展

        1.JSP的发展

二、MVC简述

        1. MVC每层之间的逻辑关系

        2. 优缺点

三、三层架构

        1.MVC架构中的"显示层"和"控制层"——》三层架构中的表现层。

        2.MVC架构中的"模型层JavaBean"——》三层架构中的业务逻辑层和数据访问层

四、小结:

        1.什么是MVC


一、MVC的发展

                JavaWEB发展史(4个阶段):

          https://blog.csdn.net/yuangan1529/article/details/118441239

                ![5](5.png)

        1.JSP的发展

        早期只有Servlet,只能使用response输出标签数据,非常麻烦后来。JSP的出现,简化了 Servlet的开发。但是过度的使用JSP,在JSP中写大量的java代码,又前端的页面,造成难以维护,难于分工协作的窘境。再后来,随着java的web开发的逐步完善,公司的开发需要形成一种规范,来更好的管理和维护代码,借鉴MVC的开发模式,使得程序的设计更加合理性。

        ![jsp](jsp.png)

        JSP(全称JavaServer Pages)是由Sun公司主导创建的一种动态网页技术标准。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。

        JSP技术以Java语言作为脚本语言,为用户的HTTP请求提供服务,并能与服务器上的其它Java程序共同处理复杂的业务需求。

二、MVC简述

        MVC(Model View Controller)是软件工程中的一种软件架构模式,它把软件系统分为模型、视图和控制器三个基本部分。用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。

        ![1](1.png)

        1. MVC每层之间的逻辑关系

        ![2](2.png)

        MVC模式的基本框架:

                M:Model,模型

                JavaBean 完成具体的业务操作,如:查询数据库,封装对象

                V:view视图

                        JSP、HTML等来进行数据展示

                C:Controller控制器。

                        Servlet获取View的请求,调用模型将数据交给视图进行展示

        MVC架构模式就是通过三层架构演变过来的,

        M和V其实就是三层架构中的web显示层  将显示层一分为二。

        2. 优缺点

> 【优点】

>

> 1. 耦合性低,方便维护,可以利于分工协作

> 2. 重用性高

>

> 【缺点】

>

> 1. 使得项目架构变得复杂,对开发人员要求高

三、三层架构

               了解三层架构:三层架构

        为什么谈及三层架构,因为MVC模式就是三层架构的扩展版本

        三层架构(3-tier architecture) 通常意义上的三层架构就是将整个业务应用划分为:界面层[表示层](User Interface layer)、业务逻辑层(Business Logic Layer)、数据访问层(Data access layer)。

        区分层次的目的即为了“高内聚低耦合” 的思想。在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构。

        ![3](3.png)

        MVC与三层架构的区别

        ![4](4.png)

        1.MVC架构中的"显示层"和"控制层"——》三层架构中的表现层。

        2.MVC架构中的"模型层JavaBean"——》三层架构中的业务逻辑层和数据访问层

        总结:MVC架构模式是一个大的概念,而三层架构你可以把它理解为对MVC模式架构的设计的思想,将来在编写代码时要遵循三层架构模式来编写。

        三层架构:三层架构是指软件系统的整体设计分层:业务逻辑层、数据持久化层和表现层。而MVC设计模式只体现在表现层中,即将表现层又分为模型、视图和控制器。

        MVC和三层架构特点:无论是MVC还是三层架构,都是一种规范,都是奔着"高内聚,低耦合"的思想来设计的。三层中的UI和Servlet来分别对应MVC中的View和Controller,业务逻辑层是来组合数据访问层的原子性功能的。

        面向接口编程:在三层中,业务逻辑层和数据访问层要遵循面型接口编程的。这种接口定义和具体实现逻辑的分开,非常有利于后续扩展和维护!

MVC  和  三层架构区别:       原理一致

        三层:

                显示层(JSP|servlet)

                业务逻辑层:biz|service   ---职责:组装数据---得到新数据。

                事务处理:多个条件进行执行时,需要一起成功,或者一起失败。

                数据访问层:对数据进行CURD   insert update  delete  select

MVC:

                Model:数据访问层   业务逻辑层   entity  DBHelper  工具类

                View:视图层    (JSP)

                controller:控制层    (serlvet|filter|listener)具

        JavaWebMVC模式具体实现包:

四、小结:

         问题1:先有servlet还是先有jsp?

                 ​ 先有servlet

                 web发展史:HTML静态页面---serlvet----jsp

         问题2:web开发模式发展:模型1  模型2

                 只有静态页面的时候:   HTML+css

                 出现servlet之后:可以进行交互

        发展:

                 模型1:第一代----把所有的代码(java+html)写一个jsp页面。  一层

                 模型1:第二代---javabean:将数据库交互的代码进行封装  src   二层

                 模型2:MVC

         问题:三层架构---开发设计模式,将程序分为三层去管理。

                 - 显示层:(jsp,doxxx.jsp【serlvet】)

                 - 业务逻辑层 (biz,service)

                 - 数据访问层(dao )----DB

         三层通过实体对象来互相联系

         MVC架构有点类似三层架构

        1.什么是MVC

         MVC也是一种开发架构设计模式,与三层架构类似。

                 MVC封了三个模块:

                 - M:model 模型(生产数据,筛选数据)——业务逻辑层,数据访问层

                 - V:view视图——表示层,职责:显示数据   JSP,HTML页面

                 - C:controller控制器——控制层,职责:接收用户请求,处理用户请求,响应结果。serlvet

         总而言之:MVC其实就是将三层架构中的显示层**"一分为二"**,将三层架构中的业务逻辑层与数据访问层进行合并成"model"。

 MVC是一个大的概念,三层架构其实就是MVC的具体的实现的一种设计模式。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值