首先呢在浏览器上输入访问的url地址,地址去找tomcat,tomcat去找你在web.xml所配置的前端控制器DispatcherServlet是什么样的是缺省的还是.do的,每次访问都会经过前端控制器,。根据你请求的资源去解析所对应的资源。

客户端发起请求去找tomcat,tomcat做4件事(1,接受客户端请求,解析请求资源地址.2,创建代表请求req对象。3,创建代表响应的resp对象。4,调用目标资源)
1,tomcat启动:加载前端控制器DispatcherServlet
A,前端控制器加载指定的springmvc的配置文件 ,创建springmvc的容器.
B,将容器存入ServletContext中
2,客户端发送请求:localhost:8080/save
A前端控制器拦截客户请求:
B解析请求地址:/save
C从spring容器找对应controller的@RequestMapper注解的对应址所对应的方法
D调用此方法

Springmvc是基于组件设计的:每个操作步骤封装了相应的组件
Springmvc的controller是基于方法设计 的

1,客户端浏览器发送请求,前端控制器接受请求。
2,前端控制器调用 处理器映射器:HandlerMapping负责根据客户的请求url寻找对应的方法。
3,处理器映射器将找到的资源返回前端控制器。
4,前端控制器调用处理器适配器:HandleAdapter 负责调用对应的Handler(方法)
5,处理器适配器将Handler的执行结果封装成 ModelAndView对象返回给前端控制器
6,前端控制器根据返回的结果调用视图解析器解析ViewResolVer将返回的结果解析成视图,返回给前端控制器
7,前端控制器对视图进行渲染后响应给客户端

每一个处理器只做一件事,做好之后将结果返回给前端控制器,前端控制器再去调用其他处理器做

  1. 前端控制器:DispatcherServlet

用户请求到达前端控制器,它就相当于 MVC 模式中的 C,DispatcherServlet 是整个流程控制的中心,由

它调用其它组件处理用户的请求,DispatcherServlet 的存在降低了组件之间的耦合性。

  1. 处理器映射器:HandlerMapping

HandlerMapping 负责根据用户请求找到 Handler 即处理器,SpringMVC 提供了不同的映射器实现不同的

映射方式,例如:配置文件方式,实现接口方式,注解方式等。

  1. 处理器适配器:HandlerAdapter

通过 HandlerAdapter 对处理器进行执行,这是适配器模式的应用,通过扩展适配器可以对更多类型的处理

器进行执行。

  1. 处理器:Handler

它就是我们开发中要编写的具体业务控制器。由 DispatcherServlet 把用户请求转发到 Handler。由

Handler 对具体的用户请求进行处理。

  1. 视图解析器:View Resolver

View Resolver 负责将处理结果生成 View 视图,View Resolver 首先根据逻辑视图名解析成物理视图名,即具体的页面地址,再生成 View 视图对象,最后对 View 进行渲染将处理结果通过页面展示给用户。

  1. 视图:View

SpringMVC 框架提供了很多的 View 视图类型的支持,包括:jstlView、freemarkerView、pdfView等。最常用的视图就是 jsp。一般情况下需要通过页面标签或页面模版技术将模型数据通过页面展示给用户,需要由程序员根据业务需求开发具体的页面

**郭大侠**