目錄
一、SpingMVC的常用組件
二、SpringMVC的工作流程
1)DispatcherServlet
是一種前端控制器,由框架提供。
作用:統(tǒng)一處理請(qǐng)求和響應(yīng)。除此之外還是整個(gè)流程控制的中心,由 DispatcherServlet 來調(diào)用其他組件,處理用戶的請(qǐng)求
2)HandlerMapping
處理器映射器,由框架提供。
作用:根據(jù)請(qǐng)求的 url、method 等信息來查找具體的 Handler(一般來講是Controller)
3)Handler(一般來講是Controller)
處理器,注意,這個(gè)需由工程師自己開發(fā)。
作用:在 DispatcherServlet 的控制下,Handler對(duì)具體的用戶請(qǐng)求進(jìn)行處理
4)HandlerAdapter
處理器適配器 ,由框架提供。
作用:根據(jù)映射器找到的處理器?Handler?信息,按照特定的規(guī)則去執(zhí)行相關(guān)的處理器 Handler。
小結(jié):
Handler 是用來干活的工具;
HandlerMapping 用于根據(jù)需要干的活找到相應(yīng)的工具;
HandlerAdapter 是使用工具干活的人。詳細(xì)講解可以看這篇博客(115條消息) SpringMVC 處理器適配器詳解_aFa攻防實(shí)驗(yàn)室的博客-博客_處理器適配器
5)ViewResolver
視圖解析器,由框架提供。
作用: ViewResolver 負(fù)責(zé)將處理結(jié)果生成 View 視圖。 ViewResolver 首先根據(jù)邏輯視圖名解析成物理圖名,即具體的頁面地址,再生成 View 視圖對(duì)象,最后對(duì) View 進(jìn)行渲染將處理結(jié)果通過頁面展示給用戶。
6)View
二、SpringMVC的工作流程視圖,工程師自己開發(fā)
作用:View接口的職責(zé)就是接收model對(duì)象、Request對(duì)象、Response對(duì)象,并渲染輸出結(jié)果給Response對(duì)象。
咱們先看圖,從左上角的瀏覽器進(jìn)行順時(shí)針觀看(話說有沒有畫圖大佬可以指教一下俺 9.9 ,在線求教~)
具體的流程:
1. 用戶通過瀏覽器發(fā)起 HttpRequest 請(qǐng)求到前端控制器 (DispatcherServlet)。
2. DispatcherServlet 將用戶請(qǐng)求發(fā)送給處理器映射器 (HandlerMapping)。
3. 處理器映射器 (HandlerMapping)會(huì)根據(jù)請(qǐng)求,找到負(fù)責(zé)處理該請(qǐng)求的處理器,并將其封裝為處理器執(zhí)行鏈 返回?(HandlerExecutionChain)?給 DispatcherServlet
4. DispatcherServlet 會(huì)根據(jù) 處理器執(zhí)行鏈 中的處理器,找到能夠執(zhí)行該處理器的處理器適配器(HandlerAdaptor)? ? --注,處理器適配器有多個(gè)
5. 處理器適配器 (HandlerAdaptoer) 會(huì)調(diào)用對(duì)應(yīng)的具體的 Controller
6. Controller 將處理結(jié)果及要跳轉(zhuǎn)的視圖封裝到一個(gè)對(duì)象?ModelAndView 中并將其返回給處理器適配器?(HandlerAdaptor)
7. HandlerAdaptor 直接將 ModelAndView 交給 DispatcherServlet ,至此,業(yè)務(wù)處理完畢
8. 業(yè)務(wù)處理完畢后,我們需要將處理結(jié)果展示給用戶。于是DisptcherServlet 調(diào)用?ViewResolver,將 ModelAndView 中的視圖名稱封裝為視圖對(duì)象
9. ViewResolver 將封裝好的視圖 (View) 對(duì)象返回給 DIspatcherServlet
10. DispatcherServlet 調(diào)用視圖對(duì)象,讓其自己 (View) 進(jìn)行渲染(將模型數(shù)據(jù)填充至視圖中),形成響應(yīng)對(duì)象 (HttpResponse)
11. 前端控制器 (DispatcherServlet) 響應(yīng) (HttpResponse) 給瀏覽器,展示在頁面上。
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧
本文題目:SpringMVC工作流程(詳-小白版)-創(chuàng)新互聯(lián)
標(biāo)題URL:http://jinyejixie.com/article20/dshsco.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊(cè)、Google、云服務(wù)器、企業(yè)建站、微信公眾號(hào)、用戶體驗(yàn)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容