SpringMVC - 谈谈你对SpringMVC的理解
谈谈你对 Spring MVC 的理解?
普通人:Spring MVC 它是一个MVC框架吧,就是,我们可以使用Spring MVC来开发Web应用...呃 它是基于Servlet上的一个扩展,就是它里面我记得好像有一个核心控制器,叫DispatcherServlet,然后扩展了之后,就是所有请求都会经过那个...DispatcherServlet然后再做一个分发...呃...Spring MVC在开发MVC应用的时候,会更简单一些吧。嗯
高手的回答:好的,关于这个问题我会从几个方面来回答。首先,Spring MVC呢 是属于Spring Framework生态里面的一个模块,它是在Servlet的基础上构建并且使用了MVC模式设计的一个Web框架,它的主要目的呢 是为了去简化传统的Servlet+JSP模式下的Web开发方式,其次啊 Spring MVC的整个架构设计呢是对Java Web里面的MVC框架模式做了一些增强和扩展,主要体现的几个方面。
1、把传统MVC框架里面的Controller控制器做了拆分,分成了前端控制器DispatcherServlet和后端控制器Controller。
2、把Model模型拆分成业务层Service和数据访问层Repository
3、在视图层,可以支持不同的视图,比如Freemark、velocity、JSP等等
所以,Spring MVC天生就是为了MVC模式而设计的,因此在开发MVC应用的时候,会更加方便和灵活。
最后我再说一下Spring MVC的整体工作流程

(1)浏览器发送请求,首先会经过Spring MVC里面的核心控制器叫 DispatcherServlet
(2-3)它主要是把请求分发到对应的Controller里面,
(4-5)而Controller里面处理完业务逻辑之后呢,会返回一个ModelAndView
(6-7)然后DispatcherServlet会去寻找一个或者多个ViewResolver的视图解析器,找到ModelAndView指定的视图,并且把数据展示到客户端,以上就是我对Spring MVC的一个理解。
(END)
SpringMVC - 谈谈你对SpringMVC的理解的更多相关文章
- SSM(SpringMVC+Spring+Mybatis)框架学习理解
近期做到的项目中,用到的框架是SSM(SpringMVC+Spring+Mybatis).之前比较常见的是SSH.用到了自然得了解各部分的分工 spring mvc 是spring 处理web层请求的 ...
- SpringMVC生命周期,SpringMVC运行流流程
SpringMVC详细运行流程图 SpringMVC运行原理 1. 客户端请求提交到DispatcherServlet2. 由DispatcherServlet控制器查询一个或多个HandlerMap ...
- springmvc学习笔记(13)-springmvc注解开发之集合类型參数绑定
springmvc学习笔记(13)-springmvc注解开发之集合类型參数绑定 标签: springmvc springmvc学习笔记13-springmvc注解开发之集合类型參数绑定 数组绑定 需 ...
- SpringMVC之八:基于SpringMVC拦截器和注解实现controller中访问权限控制
SpringMVC的拦截器HandlerInterceptorAdapter对应提供了三个preHandle,postHandle,afterCompletion方法. preHandle在业务处理器 ...
- SpringMvc基础知识(二) springmvc和mybatis整合
1 springmvc和mybatis整合 1.1 需求 使用springmvc和mybatis完成商品列表查询. 1.2 整合思路 springmvc+mybaits的系统架构: 第一步:整合dao ...
- 1.SpringMvc--初识springmvc
引自@精品唯居 springMvc是什么 springmvc是表现层的框架,是一个spring的表现层组件.是整个spring框架的一部分,但是也可以不使用springmvc.跟struts2框架功能 ...
- 谈谈嵌套for循环的理解
谈谈嵌套for循环的理解 说for的嵌套,先说一下一个for循环的是怎么用的. 这次的目的是为了用for循环输出一个乘法口诀表,一下就是我的一步步理解. 一. 语法: ...
- springmvc学习笔记(12)-springmvc注解开发之包装类型參数绑定
springmvc学习笔记(12)-springmvc注解开发之包装类型參数绑定 标签: springmvc springmvc学习笔记12-springmvc注解开发之包装类型參数绑定 需求 实现方 ...
- (转)SpringMVC学习(十二)——SpringMVC中的拦截器
http://blog.csdn.net/yerenyuan_pku/article/details/72567761 SpringMVC的处理器拦截器类似于Servlet开发中的过滤器Filter, ...
- springmvc学习笔记(10)-springmvc注解开发之商品改动功能
springmvc学习笔记(10)-springmvc注解开发之商品改动功能 标签: springmvc springmvc学习笔记10-springmvc注解开发之商品改动功能 需求 开发mappe ...
随机推荐
- 覆盖全品类数据,腾讯云COS内容审核全新上线
今年,国家网信办深入推进"清朗·春节网络环境"专项行动.截至3月24日,网信办共累计清理相关违法违规信息208万余条,处置账号7.2万余个,协调关闭.取消备案网站平台2300余家. ...
- 使用hub部署PaddleOCR
使用hub部署PaddleOCR 概述 目前有一些处理证件照片.资质照片的业务需求,已经尝试过 llava-llama3 与 llama3.2-vision,表现都不佳,要么不能正确 ocr 出文 ...
- 【微软】微软程序注册(zfile自建API)
Zfile支持设置自己的回调地址,怎么设置呢? 参考:https://docs.zfile.vip/advanced/onedrive-api/ 上面文档写的很清楚了,我提醒两点 1.进入 https ...
- 【前端】CSS实现图片文字对齐 并随着设备尺寸改变而改变大小
效果预览 HTML源码 点击查看HTML代码 <!DOCTYPE html> <html lang="zh-cn"> <head> <me ...
- swagger 文件上传以及requestbody参数传递
swagger用来做普通的API测试很方便,在实际开发过程中,经常会有文件上传,或者通过reuestbody传递数据等方式. 这个时候swagger的配置就有一些特殊了 . swagger reque ...
- 3款.NET开源、功能强大的通讯调试工具,效率提升利器!
前言 今天大姚给大家分享3款.NET开源.功能强大的通讯调试工具,帮助大家提高通讯调试的效率和准确性. LLCOM LLCOM是一个.NET开源的.功能强大的串口调试工具.支持Lua自动化处理.串口调 ...
- Android保活从入门到放弃:乖乖引导用户加白名单吧(附7大机型加白示例)
1.引言 IM在Android上的保活问题经常在即时通讯网的论坛和技术群里被讨论,自从Android 8.0后系统大大降低了后台运行应用的保活容忍度(详见<Android P正式版即将到来:后台 ...
- 即时通讯技术文集(第19期):IM架构设计基础知识合集 [共13篇]
为了更好地分类阅读 52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第19 期. [-1-] 微信后台基于时间序的新一代海量数据存储架构的设计实践 [链接] htt ...
- spark (四) RDD概念
目录 1. RDD基本概念 1.1 弹性 1.2 分布式 1.3 数据集 1.4 数据抽象 1.5 不可变 1.6 可分区.并行计算 2. WordCount为例,看RDD特性 3. RDD的五大属性 ...
- Windows Terminal 智能提示
安装PSReadLine Install-Module -Name PSReadLine -AllowClobber -Force 打开$profile notepad $profile 配置补全 在 ...