当前位置: 首页 > news >正文

Javaweb- 11 MVC架构模式

MVC(Model View Controller) 是软件工程中一种软件架构模式,它把软件系统分为模型,视图,控制器,三个基本部分。用一种业务逻辑,数据,界面显示分离的方法组织代码,将业务逻辑集群到一个部件里面。当改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。(1. 高内聚,低耦合 2. 开闭原则(对修改关闭,对拓展开放))

MVC 各层的内容

M:Model 模型层

        1. 存放和数据库对应的实体类以及一些用于存储非数据库持久化存储的相关的 VO 对象

        2. 存放一些对数据进行逻辑运算操作的业务处理代码

V:View 视图层

        1. 存放一些视图相关的代码 html css js 等

        2. 在前后端分离的项目中,该层次已经变为了独立的前端项目

C:Controller 控制层

        1. 接收客户端请求,获得请求数据

        2. 将准备好的数据,响应给客户端

MVC 项目中的常见包

M:

        1. 实体类包(pojo/entity/bean):专门存放和数据库对应的实体类和一些 VO 对象

        2. 数据库访问包(dao/mapper):专门存放对数据库不同表格 CURD 方法封存的一些类

        3. 服务包(service):专门存放对数据进行业务逻辑运算的一些类

C:

        控制层包(controller)

V:

        web 目录下的视图资源

举个栗子:

要实现一个页面,张三网络购物,买 10 本书:

用户打开页面,首先是一个视图页面

当顾客选好数量和书籍后,点击结算,将相关数据发送给控制层

 

同时,还用封装对表格数据 CRUD 的 DAO 层,和实体类层

完!

http://www.lryc.cn/news/586027.html

相关文章:

  • Redis渗透思路总结
  • Python 三大高频标准库实战指南——json · datetime · random 深度解析
  • FastGPT革命:下一代语言模型的极速进化
  • 淘宝商品评论API接口操作详解
  • MCP选型指南:AWS vs Azure vs GCP vs 国内云厂商深度对比
  • 基于 Python 的数据分析技术综述
  • 自动化运维工具jenkins问题
  • 集成语音感知与云平台的多任务智能楼宇控制系统
  • 详解缓存淘汰策略:LRU
  • Go语言生态成熟度分析:为何Go还无法像Java那样实现注解式框架?
  • Markdown语法的基础学习
  • 管理端口: 一个简单的锤子架子
  • Linux->基础IO
  • 【深度学习】 1 Deep Learning
  • 【Elasticsearch】昂贵算法与廉价算法
  • 四、深度学习——CNN
  • 【SpringAI】7. 基于 milvus 的向量检索
  • Pandas-数据查看与质量检查
  • 华为 GaussDB :技术特性、应用局限与市场争议
  • TensorFlow2 study notes[2]
  • 【嵌入式硬件实例】-555定时器实现倍压电路
  • 【408考研知识点全面讲解计算机学科专业基础综合(408)】——数据结构之排序
  • 依赖注入的逻辑基于Java语言
  • 【第五节】部署http接口到ubuntu server上的docker内
  • Eplan API Scripts
  • Transforms
  • Spring Boot 整合 OAuth2 详细教程(适用于 2025 年 Spring Boot 3.x)
  • 力扣-19. 删除链表的倒数第N个节点
  • 什么是 Bootloader?怎么把它移植到 STM32 上?
  • 【6.1.3 漫画分布式锁】