zoukankan      html  css  js  c++  java
  • javaWeb第五天---MVC设计模式

    一、MVC(model-view-controller)设计模式

      作用:提高代码的可重用性,可读性,可维护性

      层次介绍:

        模型(model):包括实体类和dao层(实现程序的逻辑实现和数据库的管理)

        试图(view):视图,和用户进行交互

        控制器(controller):(servlet)用于分发请求

      mvc是软件工程中的一种软件设计模式。mvc不是java自己拥有的,而是所有B/S系统都可以使用的一个软件设计模式。

    二、javaWeb和mvc得发展历程

      javaWeb经历了jsp model1.1,jsp model1.2,jsp model2.0(mvc),后来就是三层架构。

      2.1 jsp model1.1

        jsp model1.1是javaWeb的早期模型,适合小项目,开发成本低。这个阶段的服务器上只有jsp文件,再jsp做了太多的操作,和用户的交互,java业务逻辑,请求调度,数据库连接,都在这个jsp。使得代码的耦合度过高。

      2.2 jsp model1.2

        该阶段出现了javaBean层,业务逻辑和数据库连接等操作放在javaBean中。虽然jsp文件的功能有所减少,但是还是拥有和用户交互以及请求调度两个功能,代码耦合度仍然很高。

      2.3jsp model2

        这个阶段已经能清晰看到mvc的设计模式的层次:

          View( jsp文件):视图层,用于和用户进行交互,数据展示

          model:模型层,实现具体的业务逻辑和数据库连接

          controller( servlet ):控制层,用来找到合适的模型对象来处理业务,转发到合适的jsp

        该模型已经能够实现多人协作开发,每人负责一个模块,可以来开发复杂度到的项目,但是对开发人员的能力有要求。

    三、三层架构

      三层架构是从jsp model2过度而来,对代码分析更加详细。

      三层架构:表述层(web层),业务逻辑层,数据访问层。

        表述层:在概念划分上包含jsp和controller,这些都是和web相关的内容

        业务逻辑层:该层实现具体的业务逻辑实现,但是不包括javaWeb api,只关心业务逻辑

        数据访问层:封装了对数据库的访问细节

      三层架构比jsp model2多了一个service层,用来实现javaWeb api的具体业务逻辑。

  • 相关阅读:
    flask中程序和请求上下文
    flask的初始化
    git 强制覆盖本地代码
    python编写一个带参数的装饰器
    Android 11 unexpected LOCAL_MODULE_CLASS for prebuilts: FAKE
    systemctl自定义service执行shell脚本时报错:code=exited, status=203/EXEC
    shell应用记录
    ssm在maven项目中的需要的依赖
    swiper 5张卡片轮播图实现效果
    Codeforces 1534 题解
  • 原文地址:https://www.cnblogs.com/fbbg/p/14245115.html
Copyright © 2011-2022 走看看