Spring9-源碼分析

通過前端控制器源碼分析Spring mvc執(zhí)行過程.
第一步:前端控制器接收請求,會調(diào)用doDispatch方法.

DispatcherServlet

第二步:前端控制器調(diào)用處理器映射器,來查找Handler.

DispatcherServlet

會調(diào)用這個方法來返回一個HandlerExecutionChain對象,我們繼續(xù)跟蹤源碼發(fā)現(xiàn)最后執(zhí)行的是
AbstractHandlerMapping

第三步:調(diào)用處理器適配器執(zhí)行Handler,并返回ModelAndView


DispatcherServlet

第四步:視圖渲染,將Model數(shù)據(jù)填充到Request域.
當(dāng)執(zhí)行完Handler后會調(diào)用 2 代碼


DispatcherServlet

然后會執(zhí)行如下方法


DispatcherServlet

然后我們再進入這個方法中


DispatcherServlet

第一個方法 是得到一個view對象
第二個方法 是調(diào)用view的渲染方法,將Model數(shù)據(jù)放到Request域.
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,122評論 25 708
  • Refer to: www.threemeal.com/blog/12/ 中間件 中間件是一個鉤子框架,它們可以介...
    蘭山小亭閱讀 16,553評論 9 165
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,759評論 18 399
  • 編譯型的語言 專門的編譯器, 針對特定的平臺(操作系統(tǒng))“翻譯”成機器碼(包括機器指令和操作數(shù)),并包裝成該平臺可...
    lifeColder閱讀 248評論 0 0
  • 三天不在家,我發(fā)現(xiàn)孩兒們的好習(xí)慣跑了,早晨沒有讀書的了,三個一群,五個一伙的在聊天。課間打鬧的多了,早晨7:5...
    慧慧老師2017閱讀 498評論 0 2