Spring工作流程描述
1. 用户向服务器发送请求,请求被Spring 前端控制Servelt DispatcherServlet捕获;
2. DispatcherServlet对请求URL进行解析,得到请求资源标识符(URI)。然后根据该URI,调用HandlerMapping获得该Handler配置的所有相关的对象(包括Handler对象以及Handler对象对应的拦截器),最后以HandlerExecutionChain对象的形式返回;
3. DispatcherServlet 根据获得的Handler,选择一个合适的HandlerAdapter。(附注:如果成功获得HandlerAdapter后,此时将开始执行拦截器的preHandler(...)方法)
4. 提取Request中的模型数据,填充Handler入参,开始执行Handler(Controller)。 在填充Handler的入参过程中,根据你的配置,Spring将帮你做一些额外的工作:
HttpMessageConveter: 将请求消息(如Json、xml等数据)转换成一个对象,将对象转换为指定的响应信息
数据转换:对请求消息进行数据转换。如String转换成Integer、Double等
数据根式化:对请求消息进行数据格式化。 如将字符串转换成格式化数字或格式化日期等
数据验证: 验证数据的有效性(长度、格式等),验证结果存储到BindingResult或Error中
5. Handler执行完成后,向DispatcherServlet 返回一个ModelAndView对象;
6. 根据返回的ModelAndView,选择一个适合的ViewResolver(必须是已经注册到Spring容器中的ViewResolver)返回给DispatcherServlet ;
7. ViewResolver 结合Model和View,来渲染视图
8. 将渲染结果返回给客户端。
相关推荐
手写SpringMVC,教程请查看个人博客
SpringMVC原理共3页.pdf.zip
SpringMVC 原理及配置详解Demo,有关springMVC技术的详细介绍及demo
主要介绍了这一次搞懂SpringMVC原理说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
SpringMVC原理图
SpringMVC框架原理.mp4
完整版Java web开发教程PPT课件 Java开发进阶教程 第14章 spring mvc介绍,原理以及搭建(共15页).pptx 完整版Java web开发教程PPT课件 Java开发进阶教程 第15章 spring mvc核心对象拦截器(共26页).pptx 完整版...
spring简介及springMVC原理详述
springmvc 例子。采用了httpInvoke远程调用技术,为了简单只用了jsp->controller->dao分层。。其中的jsp controller 放在_web工程中,业务逻辑放在_svc中,分开下载,如果觉得没有,就可以不用下载另外一个工程了,...
SpringMVC学习课堂笔记,记录基本的SpringMVC原理,基本用法和相关知识点。
- 简述SpringMVC原理/执行流程 - Spring MVC 拦截器是什么 / 有什么作用 / 与 Filter有什么区别? - @Component @Controller @Service @Repository 区别? <!-- /TOC --> Spring MVC常见知识点及源码解析 MVC 是...
SpringMVC框架原理图
阅读本篇文章有助于快速了解MVC框架实现原理,帮助新人熟悉开发环境。
300M资源,微服务架构面试专题系列(MySQL,JVM,并发编程,RabbitMQ消息中间件,Spring)。 囊括的知识点非常多 ...springMVC的原理 Spring MVC工作原理 及注解说明 SpringMVC框架介绍 SpringMVC原理
10G的Java面试题视频课 囊括了JAVA基础,MySQL,Spring框架,微服务,网络等等Java程序员需要掌握的各个知识领域 ...springMVC的原理 Spring MVC工作原理 及注解说明 SpringMVC框架介绍 SpringMVC原理
Java程序员大厂面试(进大厂必看) 囊括了JAVA基础,MySQL,Spring框架,微服务,网络等等Java程序员需要掌握的各个知识领域 ...springMVC的原理 Spring MVC工作原理 及注解说明 SpringMVC框架介绍 SpringMVC原理
理解springMVC的原理.docx
自己去看源码被很多细节所干扰阻碍,不能够很好的抽离出springMVC原理的主线;所以自己想和小伙伴一起从手写简易版的SpringMVC框架出发, 理出SpringMVC的主线并深入理解SpringMVC的原理 别忘记Star哟 项目结构 ...