Javaweb学习笔记(三)——MVC与三层架构
Javaweb学习笔记(三)——MVC与三层架构
MVC模式
什么是MVC?
MVC 模式代表 Model-View-Controller(模型-视图-控制器) 模式。这种模式用于应用程序的分层开发。
-
Model(模型) - 模型代表一个存取数据的对象或 JAVA POJO。它也可以带有逻辑,在数据变化时更新控制器。 View(视图) - 视图代表模型包含的数据的可视化。页面展示。 Controller(控制器) - 控制器作用于模型和视图上。它控制数据流向模型对象,并在数据变化时更新视图。它使视图与模型分离开。
控制器(serlvlet)用来接收浏览器发送过来的请求,控制器调用模型(JavaBean)来获取数据,比如从数据库查询数据;控制器获取到数据后再交由视图(JSP)进行数据展示。
MVC好处
-
职责单一,互不影响。 有利于分工协作。 有利于组件重用
三层架构
三层架构与MVC的目标一致:都是为了解耦和、提高代码复用。MVC是一种设计模式,而三层架构是一种软件架构
三层架构是将我们的项目分成了三个层面,分别是 表现层、业务逻辑层、数据访问层。
-
数据访问层:对数据库的CRUD基本操作 业务逻辑层:对业务逻辑进行封装,组合数据访问层层中基本功能,形成复杂的业务逻辑功能。例如 注册业务功能 ,我们会先调用 数据访问层 的 selectByName() 方法判断该用户名是否存在,如果不存在再调用 数据访问层 的 insert() 方法进行数据的添加操作 表现层:接收请求,封装数据,调用业务逻辑层,响应数据
整个流程是,浏览器发送请求,表现层的Servlet接收请求并调用业务逻辑层的方法进行业务逻辑处理,而业务逻辑层方法调用数据访问层方法进行数据的操作,依次返回到serlvet,然后servlet将数据交由 JSP 进行展示。
三层架构的每一层都有特有的包名称:
-
表现层: com.example.controller 或者 com.example.web 业务逻辑层:com.example.service 数据访问层:com.example.dao 或者 com.example.mapper
MVC 和 三层架构
二者之间的关系
如图上半部分是 MVC 模式,下半部分是三层架构。 MVC 模式 中的 C(控制器)和 V(视图)就是 三层架构 中的表现层,而 MVC 模式 中的 M(模型)就是 三层架构 中的 业务逻辑层 和 数据访问层。
结语
-
笔记来自黑马程序员
上一篇:
通过多线程提高代码的执行效率例子
下一篇:
几个NetSuite常用的辅助和学习平台