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)到客戶端。

這個圖不是我畫的,我直接拿來用了,拿來主義有時候還是很好用的(*^__^*) ……

 

相信真真正正的寫過的話,這些流程就很好記了,我會在后面的一些文章里面繼續完善我的畫圖能力  ^_^

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM