MVC
-
首先要明确,MVC 只是一种设计思想,因此是跨语言、跨平台的
-
M 表示 Model,也即业务模型
-
V 表示 View,即视图
-
C 表示 Control,即控制
前言举例
- 以一个餐馆为例,在前台迎接客人的就相当于这里的 View,客人进入之后,由餐馆大厅里的员工负责接待,他们就相当于 Control,在客人点菜之后,大厅里的员工就会把菜单传给后台的厨师,由厨师负责做菜,这里的厨师就相当于 Model,也就是说 Control 是起承上启下的作用的
JavaEE三层架构
-
必须明确,JavaEE 三层架构和 MVC 不是同一个概念
-
MVC在Web项目中的体现
Struts MVC
-
请看下图
-
Filter 负责获得前台过来的请求,然后调用 Action,很明显对应的是 Control
-
这里的 Action 和 Servlet 是不一样的,因为这里的 Action 是线程安全的,因此相关的参数接收、业务方法等都可以在 Action 中进行,所以 Action 在这里对应的是 Model
-
Result 负责往外输出显示,转发重定向等,对应的是 View