今天面试碰到一个特别恶心的公司面试官。是一个金融公司,过去后告诉我2点上班,带我去见经理。经理找人面试,看起来没有hr,经理直接看简历招人。经理上来就问我是xxx大学的,我说是,然后等面试官。面试官来了拿走简历,回去(估计在想什么理由让我走),我莫名其妙的又等了几分钟。然后过来就批头盖帘的质问我,是的质问,好像我是一个小偷或者骗子一样。问我jfinal原理,我大概说了我的理解,然后他说所有的框架都是这样,然后他又让我说springmvc的原理,我说把之前看传智播客的讲解的流程说了下,他盯着我不说话,然后说行了,你可以走了,我需要人的时候会联系你。显然不想招我,那早先就说好我就不来了,心里异常郁闷。这里还是重新梳理下原理,因为我发现我表达不太清楚。

springmvc工作原理,就是路径,作者:传智.燕青

说明:

  1. 用户发送请求到DispatcherServlet,即前端控制器
  2. DipatcherServlet调用处理器映射器HandlerMapping解析
  3. 处理器映射器HandlerMapping根据请求的url找到具体的处理器,生成处理器对象和处理器拦截器一并发给DispatcherServlet
  4. DispatcherServlet通过处理器适配器HandlerAdapter调用处理器;
  5. 执行处理器,即controller,也叫后端控制器
  6. controller执行完毕后返回ModelAndview给处理器适配器HandlerAdapter
  7. 处理器适配器HandlerAdapter将controller返回的ModelAndView发送给DispatherServlet
  8. DispatcherServlet将ModelAndView传给视图解析器viewResolver
  9. viewResoler解析后返回具体的view
  10. DispatcherServlet对view进行渲染视图(即将模型数据填充到视图中)
  11. DispatcherServlet响应客户

springmvc原理的更多相关文章

  1. SpringMVC 原理 - 设计原理、启动过程、请求处理详细解读

    SpringMVC 原理 - 设计原理.启动过程.请求处理详细解读 目录 一. 设计原理 二. 启动过程 三. 请求处理 一. 设计原理 Servlet 规范 SpringMVC 是基于 Servle ...

  2. [SpringMVC]SpringMVC学习笔记一: springmvc原理及实例解析.

    前言:今天来回顾下SpringMVC的开发原理, 使用图文并茂的方式 来解析其中的内幕, 我相信懂了其中的运行机制后, 对于面试中SpringMVC大家都可以说so easy了. 一, 图示法 第二张 ...

  3. SpringMVC原理和框架

    SpringMVC工作原理 在上一篇章[spring]01_环境配置 中,我们演示了一个简单的HelloWorld工程. 本篇章重点讲述SpringMVC的基本工作原理,让大家进一步加深认识. 工作流 ...

  4. SpringMVC原理+流程图

    SpringMVC工作原理:整个处理过程从一个HTTP请求开始:1)DispatcherServlet接收到请求后,根据对应配置文件中配置的处理器映射,找到对应的处理器映射项(HandlerMappi ...

  5. SpringMVC原理及非注解配置详解

    1. Spring介绍 Spring MVC是Spring提供的一个强大而灵活的web框架.借助于注解,Spring MVC提供了几乎是POJO的开发模式,使得控制器的开发和测试更加简单. 这些控制器 ...

  6. 浅析 SpringMVC 原理和配置.

    一.原理 Spring MVC基于模型-视图-控制器(Model-View-Controller,MVC)模式实现,它能够帮你构建像Spring框架那样灵活和松耦合的Web应用程序,将请求处理的逻辑和 ...

  7. SpringMVC原理&MVC设计思想

    什么是MVC? MVC是一种架构模式 --- 程序分层,分工合作,既相互独立,又协同工作 MVC是一种思考方式 --- 需要将什么信息展示给用户? 如何布局? 调用哪些业务逻辑? MVC流程图如下图所 ...

  8. springmvc原理详解(手写springmvc)

    最近在复习框架 在快看小说网搜了写资料 和原理 今天总结一下 希望能加深点映像  不足之处请大家指出 我就不画流程图了 直接通过代码来了解springmvc的运行机制和原理 回想用springmvc用 ...

  9. (二)springMvc原理和手写springMvc框架

    我们从两个方面了解springmvc执行原理,首先我们去熟悉springmvc执行的过程,然后知道原理后通过手写springmvc去深入了解代码中执行过程. (一)SpringMVC流程图 (二)Sp ...

随机推荐

  1. SQL Server2008清除数据库日志

    m缪国瑞  11:10:17 --'这里的DNName_Log 如果不知道在sys.database_files里是什么名字的话,可以用以下注释的语句进行查询USE dochuanGOSELECT f ...

  2. HTML实现简单计算器

    <!DOCTYPE html> <html> <meta name="content-type" content="text/html; c ...

  3. 基于 Asp.Net的 Comet 技术解析

    Comet技术原理 来自维基百科:Comet是一种用于web的技术,能使服务器能实时地将更新的信息传送到客户端,而无须客户端发出请求,目前有两种实现方式,长轮询和iframe流. 简单的说是一种基于现 ...

  4. ASP.NET MVC学前篇之请求流程

    ASP.NET MVC学前篇之请求流程 请求流程描述 对于请求的流程,文章的重点是讲HttpApplication和HttpModule之间的关系,以及一个简单的示例实现.(HttpModule又是M ...

  5. CSharpGL(2)设计和使用场景元素及常用接口

    CSharpGL(2)设计和使用场景元素及常用接口 2016-08-13 由于CSharpGL一直在更新,现在这个教程已经不适用最新的代码了.CSharpGL源码中包含10多个独立的Demo,更适合入 ...

  6. ASP.NET Web API的Controller是如何被创建的?

    Web API调用请求的目标是定义在某个HttpController类型中的某个Action方法,所以消息处理管道最终需要激活目标HttpController对象.调用请求的URI会携带目标HttpC ...

  7. Go语言实战 - 创业进行时之创业伊始

    在工作了10年之后,我于32岁的年纪在两个月前辞职创业了. 简单介绍一下之前的整个职业生涯,挺典型的,工程师 –> 资深工程师 –> 架构师 –> 项目经理 –> 部门经理,可 ...

  8. Loadrunner时间函数、用时间生成订单编号例子

    Loadrunner中取时间函数.用时间函数生成订单编号例子: <如要转载,请注明网络来源及作者:Cheers_Lee> 问题的提出: (1)有时候在Loadrunner中用C语言设计脚本 ...

  9. ArchLinux安装指南

    将ArchLinux作为进阶Linux发行版,主要看重滚动更新和深入理解Linux的安装过程. 由于是新手,所以先选择在公司电脑上用VMware来安装.然后渐进到借助U盘在win10笔记本上安装双系统 ...

  10. Sql Server系列:Insert语句

    1 INSERT语法 [ WITH <common_table_expression> [ ,...n ] ] INSERT { [ TOP ( expression ) [ PERCEN ...