30. MVC设计模式

JavaEE 开发流程

在这里插入图片描述

在这里插入图片描述

MVC的概念

MVC是Model-View-Controller的简称,即模型-视图-控制器。
MVC是一种设计模式,它把应用程序分成三个核心模块:模型、视图、控制器,它们各自处理自己的任务。

模型(model)
  • 模型是应用程序的主体部分,模型表示业务数据和业务逻辑。
  • 一个模型能为多个视图提供数据。
  • 由于应用于模型的代码只需写一次就可以被多个视图重用,所以提高了代码的可重用性。
    视图

视图是用户看到并与之交互的界面,作用如下:

  • 视图向用户显示相关的数据。
  • 接受用户的输入。
  • 不进行任何实际的业务处理。
    控制器
  • 控制器接受用户的输入并调用模型和视图去完成用户的需求。
  • 控制器接收请求并决定调用哪个模型组件去处理请求,然后决定调用哪个视图来显示模型处理返回的数据。
MVC处理流程

在这里插入图片描述

View:JSP
  • 呈现数据:从 reuqes 中获取 Servlet 放入的属性,
  • 接收用户的输入,将输入转给controller
  • 编写 JS 代码给出对应的提示。
Controller:Controller
  • 获取请求信息:获取请求参数
  • 验证请求参数的合法性:验证失败,需要返回页面,并给出提示信息
  • 把请求参数封装为一个 JavaBean
  • 调用 Service的方法获取返回的结果
  • 把返回的结果放入到 request 中
  • 响应页面:转发、重定向
Model:DAO
  • 获取数据库连接
  • 执行 CRUD 操作
  • 返回结果
Model:MySQL
  • 用于存储数据
Service:服务层
  • 整个项目核心功能的体现
  • 接受Controller层的调用,调用dao层
  • 不能跨层访问
  • 只能自上向下依赖,而不能自下向上依赖

相关推荐

  1. MVC设计模式

    2023-12-23 15:04:02       57 阅读
  2. qt MVC软件设计模式

    2023-12-23 15:04:02       39 阅读
  3. MVC设计模式的思想

    2023-12-23 15:04:02       33 阅读
  4. MVC设计模式的详解及应用

    2023-12-23 15:04:02       45 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-23 15:04:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-23 15:04:02       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-23 15:04:02       82 阅读
  4. Python语言-面向对象

    2023-12-23 15:04:02       91 阅读

热门阅读

  1. 登录界面UI开发 - 登录注册开发入门(1)

    2023-12-23 15:04:02       62 阅读
  2. tomcat剖析:开篇

    2023-12-23 15:04:02       68 阅读
  3. gitee 怎么添加SSH密钥

    2023-12-23 15:04:02       65 阅读
  4. mybatis xml 文件 sql include 的用法

    2023-12-23 15:04:02       54 阅读
  5. 使用xuggle_5.4 实现视频加水印

    2023-12-23 15:04:02       59 阅读
  6. mockito-study-api

    2023-12-23 15:04:02       55 阅读
  7. Mac[M1]安装mongodb

    2023-12-23 15:04:02       52 阅读
  8. 掌握 Rust 中的建造者模式

    2023-12-23 15:04:02       65 阅读
  9. Harmonyos系统使用http访问网络和应用数据管理

    2023-12-23 15:04:02       50 阅读
  10. 数据处理演进:EtLT崛起,ELT正在告别历史舞台

    2023-12-23 15:04:02       53 阅读
  11. Golang leetcode59 螺旋矩阵

    2023-12-23 15:04:02       51 阅读
  12. 基于汉宁窗FIR滤波器实现语音信号加噪去噪

    2023-12-23 15:04:02       60 阅读
  13. MySQL数据库

    2023-12-23 15:04:02       49 阅读
  14. 理解计算机中的中断与中断处理

    2023-12-23 15:04:02       69 阅读