http://blog.sina.com.cn/s/blog_7ef0a3fb0101po57.html
1、客户端发出一个http请求给web服务器,web服务器对http请求进行解析,如果匹配DispatcherServlet的请求映射路径(在web.xml中指定),web容器将请求转交给DispatcherServlet.
2、DipatcherServlet接收到这个请求之后将根据请求的信息(包括URL、Http方法、请求报文头和请求参数Cookie等)以及HandlerMapping的配置找到处理请求的处理器(Handler)。
3-4、DispatcherServlet根据HandlerMapping找到对应的Handler,将处理权交给Handler(Handler将具体的处理进行封装),再由具体的HandlerAdapter对Handler进行具体的调用。
5、Handler对数据处理完成以后将返回一个ModelAndView()对象给DispatcherServlet。
6、Handler返回的ModelAndView()只是一个逻辑视图并不是一个正式的视图,DispatcherSevlet通过ViewResolver将逻辑视图转化为真正的视图View。
7、Dispatcher通过model解析出ModelAndView()中的参数进行解析最终展现出完整的view并返回给客户端。
SpringMVC接口解释
DispatcherServlet接口:
Spring提供的前端控制器,所有的请求都有经过它来统一分发。在DispatcherServlet将请求分发给Spring Controller之前,需要借助于Spring提供的HandlerMapping定位到具体的Controller。
HandlerMapping接口:
能够完成客户请求到Controller映射。
http://blog.csdn.net/cswhale/article/details/16941281
Controller接口:
需要为并发用户处理上述请求,因此实现Controller接口时,必须保证线程安全并且可重用。
Controller将处理用户请求,这和Struts Action扮演的角色是一致的。一旦Controller处理完用户请求,则返回ModelAndView对象给DispatcherServlet前端控制器,ModelAndView中包含了模型(Model)和视图(View)。
从宏观角度考虑,DispatcherServlet是整个Web应用的控制器;从微观考虑,Controller是单个Http请求处理过程中的控制器,而ModelAndView是Http请求过程中返回的模型(Model)和视图(View)。
ViewResolver接口:
Spring提供的视图解析器(ViewResolver)在Web应用中查找View对象,从而将相应结果渲染给客户。
SpringMVC运行原理
1. 客户端请求提交到DispatcherServlet
2. 由DispatcherServlet控制器查询一个或多个HandlerMapping,找到处理请求的Controller
3. DispatcherServlet将请求提交到Controller
4. Controller调用业务逻辑处理后,返回ModelAndView
5. DispatcherServlet查询一个或多个ViewResoler视图解析器,找到ModelAndView指定的视图
6. 视图负责将结果显示到客户端
DispatcherServlet是整个Spring MVC的核心。它负责接收HTTP请求组织协调Spring MVC的各个组成部分。其主要工作有以下三项:
1. 截获符合特定格式的URL请求。
2. 初始化DispatcherServlet上下文对应的WebApplicationContext,并将其与业务层、持久化层的WebApplicationContext建立关联。
3. 初始化Spring MVC的各个组成组件,并装配到DispatcherServlet中。
分享到:
相关推荐
spring mvc 工作原理
以下是Spring MVC工作原理及注解的详细说明: 1. **Spring MVC组件及职责**: - **DispatcherServlet**:前端控制器,所有请求首先会到达这里,它负责调度请求,根据HandlerMapping找到合适的Controller。 - **...
Spring MVC 工作原理 Spring MVC 是 Spring 框架的一部分,提供了构建 Web 应用程序的全功能 MVC 模块。Spring MVC 框架主要由 DispatcherServlet、处理器映射、处理器(控制器)、视图解析器、视图组成。 ...
在`hibernate3.6.8.chm`文件中,可能包含了Hibernate 3.6.8的官方文档,对于深入理解Hibernate的工作原理和API使用非常有帮助。而`spring-framework-2.5.6-with-docs.zip`可能包含了Spring 2.5.6的源码和文档,帮助...
这份【面试资料】-(机构内训资料)看透Spring MVC源代码分析与实践.zip文件很可能是为了帮助求职者准备相关面试问题而设计的,包含了对Spring MVC工作原理、关键组件和源码解读的详尽解析。 1. **Spring MVC基本...
Spring MVC 是一个基于 Java 的轻量级 Web 开发框架,它是 Spring 框架的一部分,主要用于构建 MVC(Model-View-Controller)模式的 Web 应用程序。...请仔细阅读代码并尝试运行,以加深对 Spring MVC 工作原理的理解。
本教程将带你入门 Spring MVC,理解其核心概念和工作原理,以及如何在实际项目中应用。 一、Spring MVC 架构 Spring MVC 提供了一个模型-视图-控制器的设计模式,它将应用程序逻辑、用户界面和数据处理分离,使得...
**Spring MVC 工作原理图** 原理图可能展示了请求如何经过 DispatcherServlet 分发,如何使用 HandlerMapping 映射请求到 Controller,以及 Model 和 View 如何交互。它还可能包含对拦截器、异常处理和数据绑定的...
**Spring MVC 框架详解** Spring MVC 是 Spring 框架的一个模块,它为 Java 应用程序提供了模型-视图-控制器(MVC)架构。...通过深入理解 Spring MVC 的工作原理和相关库,可以有效地提升开发效率和应用质量。
**Spring MVC 工作原理** 1. **请求分发**:当用户发起 HTTP 请求时,Spring MVC 的 DispatcherServlet 将捕获请求并根据请求路径查找合适的处理器(Controller)。 2. **模型绑定**:Controller 处理请求后,可能...
Spring MVC 是一个强大的Java Web开发框架,由Spring社区开发,用于构建高效、模块化和可测试的Web应用程序。...进一步探索这个项目,将有助于加深对Spring MVC工作原理的理解,从而更好地应用于实际的Web开发项目。
这个"Spring MVC使用Demo"提供了实践操作,帮助开发者深入理解Spring MVC的开发环境配置、注解的使用以及工作原理。 首先,Spring MVC的设计模式基于Model-View-Controller(MVC),它将应用程序的业务逻辑、数据和...
**Spring MVC原理:** Spring MVC是Spring框架的一部分,它遵循MVC模式,提供了处理HTTP请求的DispatcherServlet。DispatcherServlet接收请求后,根据请求URL和方法找到对应的HandlerMapping,然后调用对应的Handler...
JavaScript是前端开发的主要...对于想要学习或深入理解前后端交互以及Spring MVC工作原理的开发者来说,这是一个非常有价值的参考资料。通过分析这些源码,你可以了解如何在实际项目中应用这些技术,提升你的开发技能。
### Spring MVC 工作原理 1. **用户请求**:用户点击链接或提交表单,浏览器发送请求携带用户信息。 2. **DispatcherServlet**:请求到达 DispatcherServlet,它负责分发请求给合适的控制器。 3. **处理器映射**:...
这有助于提高对Spring MVC工作原理的理解,并为实际项目开发打下坚实基础。通过实践,你可以进一步探索Spring Security、AOP(面向切面编程)等Spring生态中的其他组件,以提升Web应用的安全性和可扩展性。
**二、Spring MVC 工作原理** 1. **请求处理流程** - 用户发起HTTP请求到达服务器。 - DispatcherServlet捕获请求,通过HandlerMapping找到对应的处理器(Controller)。 - Controller执行业务逻辑,并返回...
本文将深入探讨Spring MVC框架的工作原理和机制。 首先,我们来看看Spring MVC的核心组件——DispatcherServlet。DispatcherServlet是整个框架的入口点,它扮演着请求分发器的角色。在`web.xml`配置文件中,我们...