深入剖析 MVC 模式与三层架构

这篇具有很好参考价值的文章主要介绍了深入剖析 MVC 模式与三层架构。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 前言

前面我们探讨了 JSP 的使用,随着计算机技术的不断更新迭代,JSP 的技术由于存在很多的缺点,已经逐渐退出了历史的舞台,所以在学习时,我们只需要了解其如何实现的数据的增删改查。不用刨根问底,花费大量的时间,得不偿失。

  • 理解 JSP 及其原理
  • 学会使用 EL 表达式和 JSTL 标签
  • 理解 MVC 模式和三层架构

快速阅读:一文带你吃透JSP

学习 MVC 模式和三层架构的知识,可以让我们在开发中提高代码的维护性和扩展性。

2. MVC模式

MVC模式是一种分层开发的模式,其中:

  • M:Model,业务模型,处理业务
  • V:View,视图,用于界面展示
  • C:Controller,控制器,处理请求,调用模型和视图

mvc与三层架构模式,# 付费专栏试读,mvc,架构,servlet,spring,spring boot

其中,控制器(Servlet)用来接收浏览器发送的请求,控制器调用模型(JavaBean)来获取数据,比如从从数据库查询数据,控制器获取数据后在交给视图(JSP)进行数据的展示。

使用 MVC 模式开发有很多的好处,例如,职责单一,互不影响,每个角色各司其职。有利于分工协作和组件重用等。

3. 三层架构

三层架构的模型将我们的项目分成了三个层面,分别是表现层,业务逻辑层和数据访问层。其中数据访问层又称持久层。

mvc与三层架构模式,# 付费专栏试读,mvc,架构,servlet,spring,spring boot

  • 数据访问层:对数据库进行增删改查等基本操作。
  • 业务逻辑层:对业务逻辑进行封装,组合数据访问层中的基本功能,形成复杂的业务逻辑功能,例如注册业务功能,我们先调用数据访问层的 selectByName() 方法判断该用户名是否存在,如果不存在再调用数据访问层的 insert() 方法进行数据的添加操作。
  • 表现层:接收请求,封装数据,调用业务逻辑层,响应数据。

在整个流程中,浏览器发送请求,表现层的 Servlet 接收请求并调用业务逻辑层的方法进行业务逻辑处理,而业务逻辑层方法调用数据访问层方法进行数据的CRUD 操作,依次返回给 Servlet,然后 Servlet 将数据交给 JSP 进行展示。

三层架构的每一层都有特有的包名名称,以后我们在学习中就要使用更加规范的命名方式,他们分别是:

  • 表现层:org.chengzi.web 或者 org.chengzi.controller
  • 业务逻辑层:org.chengzi.service
  • 数据访问层:org.chengzi.mapper或者org.chengzi.dao

马上就要学习完 JavaWeb 了,后面我们会学习更多的框架,Spring,SpringMVC,MyBatis 等等,其实不同的框架是对不同层进行的封装,如图:

mvc与三层架构模式,# 付费专栏试读,mvc,架构,servlet,spring,spring boot

4. MVC和三层架构

我们已经说完了 MVC 模式和三层架构,下面来看看两者有什么关系呢?

mvc与三层架构模式,# 付费专栏试读,mvc,架构,servlet,spring,spring boot

如图,上半部分是 MVC 模式,后半部分是三层架构,其中,MVC 模式中的控制器和视图就是三层架构中的表现层,而 MVC 模式中的模型就是三层架构中的业务逻辑层和数据访问层。

5. 总结

5.1 IDEA 小技巧

解决 Ctrl+Alt+V 快捷键 自动补全代码失败的问题,如图:

mvc与三层架构模式,# 付费专栏试读,mvc,架构,servlet,spring,spring boot

原因:未添加 main() 方法

解决:在类中添加main() 方法,如果是在Servlet中,则添加toGet() 等方法。

如果将 MVC 理解为一个大的概念,那么三层结构就是对 MVC 模式实现架构的思想,根据标准,我们将不同层的代码放在不同的包下,每一层里面职责单一,将来如果表现层的技术更新迭代,而业务逻辑层和数据访问层的代码则不用发生变化,大大提高的代码的可维护性。


mvc与三层架构模式,# 付费专栏试读,mvc,架构,servlet,spring,spring boot

你问我青春还剩几年?我的回答是,趁现在,正当时。身边朋友都在问我怎样学好一门编程语言,怎样学好Java?怎样通过 Java 找到一份满意的工作?推荐学习此专栏:Java编程基础教程系列(零基础小白搬砖逆袭)

下期见。文章来源地址https://www.toymoban.com/news/detail-836954.html

到了这里,关于深入剖析 MVC 模式与三层架构的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MVC 三层架构案例详细讲解

    @ 目录 MVC 三层架构案例详细讲解 每博一文案 1. MVC 概述 2. MVC设计思想 3. 三层架构 4. MVC 与 三层架构的关系: 5. 案例举例:用户账户转账 5.1 M(Model :数据/业务处理层) 5.2 C (Controller : 控制层) 5.3 V (View :视图/展示) 6. 总结: 7. 最后: MVC开始是存在于桌面程序中的,M是指业务

    2024年02月05日
    浏览(50)
  • JavaWeb和MVC三层架构

    网站发布和部署一定要依托技术语言吗: 不一定,一个网站可以直接发布和部署,因为因为浏览器能够识别网页只需要两样东西,网络和静态页面,还有一个装在他们的容器,比如 nginx。 静态页面面临的问题: 1:静态网页是固定的,是不可变的。如果一个网站比如腾讯首页

    2024年02月14日
    浏览(48)
  • 【Spring MVC】快速学习使用Spring MVC的注解及三层架构

    💓 博客主页:从零开始的-CodeNinja之路 ⏩ 收录文章:【Spring MVC】快速学习使用Spring MVC的注解及三层架构 🎉欢迎大家点赞👍评论📝收藏⭐文章 SpringWebMVC是基于ServletAPI构建的原始Web框架,从⼀开始就包含在Spring框架中。它的正式名称“SpringWebMVC”来⾃其源模块的名称(Spri

    2024年04月17日
    浏览(50)
  • spring boot入门与理解MVC三层架构

    分层是为了实现“高内聚,低耦合”,把问题划分开来,各个解决,易于控制,延展和分配资源,最重要有利于后期维护项目; MVC指的是model,view,controller; 在SpringMVC编程中一般分为四层: 1.表示层:(jsp、html 主要就是界面的展示),负责前后端交互,接收前端发送的请求,

    2024年02月05日
    浏览(51)
  • JavaWeb学习|JavaBean;MVC三层架构;Filter;Listener

    实体类 JavaBean有特定的写法: 必须要有一个无参构造 属性必须私有化。 必须有对应的get/set方法 用来和数据库的字段做映射 ORM; ORM:对象关系映射 表---类 字段--属性 行记录----对象   Filter:过滤器,用来过滤网站的数据 处理中文乱码 登录验证.... 弄一个过滤器的demo 空maven+web项

    2024年02月13日
    浏览(47)
  • 迷不迷糊?前后端、三层架构和MVC傻傻分不清

    现在的项目都讲究前后端分离,那到底什么是前后端,前后端和以前的MVC以及三层架构啥关系呢?今天就这个问题展开一下,方面后面的学习,因为前面讲的jsp、servlet和javabean根据实例,基本上有一个框架的理解了,谁处理什么业务也大概清楚了,而且也提到了MVC这个东西,

    2024年03月08日
    浏览(58)
  • Java复习第十八天学习笔记(MVC,三层架构,分页),附有道云笔记链接

    【有道云笔记】十八 4.4 MVC模式、三层架构、分页 https://note.youdao.com/s/PRQ62OUV 一、MVC MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范, 用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,

    2024年04月12日
    浏览(47)
  • 【软件架构模式——MVC、MVP、MVVM】

    1. MVC(Model-View-Controller) 概念介绍: MVC是一种软件架构模式,用于组织应用程序的代码和逻辑。它将应用程序分为三个核心部分:模型(Model)、视图(View)和控制器(Controller)。 **模型(Model)**负责处理应用程序的数据逻辑和状态。它表示应用程序的数据源,并封装了与

    2024年02月11日
    浏览(57)
  • 【Android】MVC,MVP,MVVM三种架构模式的区别

    MVC 传统的代码架构模式,仅仅是对代码进行了分层,其中的C代表Controller,控制的意思 将代码划分为数据层,视图层,控制层,三层之间可以任意交互 MVP MVP是在MVC基础上改进而来的一种架构,其中的P代表Presenter,主持的意思 它主要在以下两方面进行了改进:解耦,接口化

    2024年02月13日
    浏览(65)
  • Android安卓架构MVC、MVP、MVVM模式的概念与区别

    目录 MVC框架 MVP框架 MVVM框架 MVVM与MVP区别 MVVM与MVC区别 MVC、MVP、MVVM模式哪个要好一些 MVC(Model-View-Controller)、MVP(Model-View-Presenter)、MVVM(Model-View-ViewModel)是三种常见的软件架构模式,它们的目的都是将应用程序的不同部分分离开来,以提高代码的可维护性、可扩展性和可

    2024年02月21日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包