MVC开发模式与三层架构的区别与联系

简介: MVC开发模式三层架构:软件设计模式

MVC开发模式

1. M:Model,模型。JavaBean

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

javabean

如果读写方法符合以下这种命名规范:

// 读方法:

public Type getXyz()

// 写方法:

public void setXyz(Type value)

那么这种class被称为JavaBean

JavaBean主要用来传递数据,即把一组数据组合成一个JavaBean便于传输。

Javabean对象的属性

属性找的是成员方法,而不是成员变量

setter或getter方法,去掉set或get,再将剩余部分,首字母变为小写,就得到了对象的属性

setName --> Name --> name

getName --> Name --> name

2. V:View,视图。JSP

展示数据

3. C:Controller,控制器。Servlet

  1. 获取用户的输入
  2. 调用模型
  3. 将数据交给视图进行展示
    在控制器servlet中可以通过共享域对象将数据交给视图jsp


三层架构:软件设计模式

1. 表现层(web层)

表示层负责接收用户请求、转发请求、显示数据等

2. 业务层(service层)

对数据进行逻辑处理

3. 数据访问层(dao层)

直接和数据库打交道,对数据进行增删改查操作

点餐的例子理解三层架构

用户对应为:食客——通过服务员点餐

表现层对应为:服务员——负责食客的点单和上菜

业务层对应为:厨师——从服务员那里获取消息,向助手要原材料,并将原材料加工后交给服务员

数据访问层对应为:助手——从厨师那里获取通知,将原材料从仓库中交给厨师


这三个分层,每一层都有不同的架构模式

表示层最常用的架构模式就是MVC

一般来说,框架 > 架构模式 > 设计模式 > 设计原则


三层架构之间如何联系起来

业务层调用持久层,表现层调用业务层

目录
相关文章
|
3月前
|
设计模式 前端开发 数据库
从MVC到MVVC:软件架构的演变和迭代(二)
从MVC到MVVC:软件架构的演变和迭代
【各种问题处理】X86架构和ARM架构的区别
【1月更文挑战第13天】【各种问题处理】X86架构和ARM架构的区别
|
1月前
|
前端开发 数据安全/隐私保护
什么是mvvm,mvp、mvc和mvvm模式有什么区别?
什么是mvvm,mvp、mvc和mvvm模式有什么区别?
33 0
|
2天前
|
前端开发 Java PHP
信息系统架构模型(1) MVC
信息系统架构模型(1) MVC
6 0
|
1月前
|
设计模式 前端开发 数据处理
MVC架构中,控制器和模型之间是如何交互的
MVC架构中,控制器和模型之间是如何交互的
10 0
|
1月前
|
存储 设计模式 前端开发
请解释 Web 应用程序的 MVC(模型-视图-控制器)架构。
【2月更文挑战第26天】【2月更文挑战第89篇】请解释 Web 应用程序的 MVC(模型-视图-控制器)架构。
|
1月前
|
存储 机器学习/深度学习 并行计算
阿里云服务器X86计算、Arm计算、GPU/FPGA/ASIC、高性能计算架构区别
在我们选购阿里云服务器的时候,云服务器架构有X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器、高性能计算可选,有的用户并不清楚他们之间有何区别,本文主要简单介绍下不同类型的云服务器有何不同,主要特点及适用场景有哪些。
阿里云服务器X86计算、Arm计算、GPU/FPGA/ASIC、高性能计算架构区别
|
1月前
|
消息中间件 缓存 API
|
1月前
Sora 和之前 Runway 那些在架构上有啥区别呢?_sora和diffsion的区别
Sora 和之前 Runway 那些在架构上有啥区别呢?_sora和diffsion的区别
13 0
|
2月前
|
存储 前端开发 JavaScript
什么是MVVM?MVC、MVP与MVVM模式的区别?
什么是MVVM?MVC、MVP与MVVM模式的区别?