Struts2和SpringMVC的执行流程。

先介绍一下SpringMVC的执行流程:

1:客户端发起请求到DispatcherServlet(前端控制器)

2:前端控制器请求HandlerMapping(处理器映射器)查找 Handler

  根据xml配置、注解进行查找

3:HandlerMapping(处理器映射器)向DispatcherServlet(前端控制器)返回Handler

4:DispatcherServlet(前端控制器)调用HandlerAdapter(处理器适配器)去执行Handler

5:HandlerAdapter(处理器适配器)去执行Handler

6:Handler执行完成给HandlerAdapter(处理器适配器)返回ModelAndView

7:HandlerAdapter(处理器适配器)向前端控制器返回ModelAndView

  ModelAndView是springmvc框架的一个底层对象,包括 Model和view

8:前端控制器请求ResolverView(视图解析器)去进行视图解析

  根据逻辑视图名解析成真正的视图(jsp)

9:ResolverView(视图解析器)向DispatcherServlet(前端控制器)返回View

10:DispatcherServlet(前端控制器)进行视图渲染

         视图渲染将模型数据(在ModelAndView对象中)填充到request域

最后DispatcherServlet(前端控制器)向用户响应(response)结果

本人不是学美术的,也不是做前端的,所以画的不好看  O(∩_∩)O~

 

 

 

然后是Struts2的执行流程:1、客户端向服务器端发送一个请求,经过一系列的过滤器(在Struts2.0版本的时候叫做FilterDispatcher,在Struts2.1以上的版本叫做StrutsPrepareAndExecuteFilter),过滤器(StrutsPrepareAndExecuteFilter)会解析Struts.xml文件,请求查找相应的Action,如果没有则会报错,如果有则会生成对应的代理对象,然后经过一系列的拦截器,直到调用Action类中的execute()方法,处理结果由Struts2的处理器到核心过滤器再到服务器,最后由服务器响应(Response)到客户端。

这个图不是我画的,我直接拿来用了,拿来主义有时候还是很好用的(*^__^*) ……

 

相信真真正正的写过的话,这些流程就很好记了,我会在后面的一些文章里面继续完善我的画图能力  ^_^

 

posted on 2017-03-18 10:18  java-追风筝的人  阅读(5376)  评论(1编辑  收藏  举报

导航