图片说明
图中实线的部分为SpringMVC框架自动实现的地方,只有虚线是我们需要完成的地方。

1.DispatcherServlet表示前置控制器,是整个SpringMVC的控制中心。用户发出请求,DispatcherServlet接收请求并拦截请求。
[]
我们假设请求的url为 : http://localhost:8080/SpringMVC/hello

如上url拆分成三部分:
请在这里输入引用内容
http://localhost:8080服务器域名
请在这里输入引用内容
SpringMVC部署在服务器上的web站点
请在这里输入引用内容
hello表示控制器
请在这里输入引用内容
通过分析,如上url表示为:请求位于服务器localhost:8080上的SpringMVC站点的hello控制器。

2.HandlerMapping为处理器映射。DispatcherServlet调用HandlerMapping,HandlerMapping根据请求url查找Handler。

3.HandlerExecution表示具体的Handler,其主要作用是根据url查找控制器,如上url被查找控制器为:hello。

4.HandlerExecution将解析后的信息传递给DispatcherServlet,如解析控制器映射等

5.HandlerAdapter表示处理器适配器,其按照特定的规则去执行Handler。

6.Handler让具体的Controller执行。

7.Controller将具体的执行信息返回给HandlerAdapter,如ModelAndView。

8.HandlerAdapter将视图逻辑名或模型传递给DispatcherServlet。

9.DispatcherServlet调用视图解析器(ViewResolver)来解析HandlerAdapter传递的逻辑视图名。

10.视图解析器将解析的逻辑视图名传给DispatcherServlet。

11.DispatcherServlet根据视图解析器解析的视图结果,调用具体的视图。

12.最终视图呈现给用户。

1=>2=>3=>4:用户发起请求的时候,经过前端控制DispatcherServlet,根据这个请求走相应的映射器,再返回给DispatcherServlet。
【适配一个请求到底是干嘛的】
5=>6=>7=>8:根据这个映射器再适配一个Controller映射器,然后由Controller去执行,执行完返回一个Model and View.
【这个请求干的事情交给适配器HanderAdapter和Controller来做】
9=>10=>11=>12:根据model and view 再去适配具体的视图解析器,视图解析器返回给前端调用。
【Controller返回的model进行视图解析】
我们需要做的事只是
1.Controller层调用业务层
2.设置视图返回的名字