springmvc執(zhí)行流程通俗易懂 SpringBoot工作原理?
SpringBoot工作原理?通過瀏覽器訪問springboot的方法一般是springmvc的,即創(chuàng)建相應(yīng)的控制器,在控制器中調(diào)用服務(wù),然后在瀏覽器中發(fā)送相應(yīng)的rmvc架構(gòu)的設(shè)計思路?MVC設(shè)計思想
SpringBoot工作原理?
通過瀏覽器訪問springboot的方法一般是springmvc的,即創(chuàng)建相應(yīng)的控制器,在控制器中調(diào)用服務(wù),然后在瀏覽器中發(fā)送相應(yīng)的r
mvc架構(gòu)的設(shè)計思路?
MVC設(shè)計思想:將整個處理流程標(biāo)準(zhǔn)化,將每個處理步驟分配給不同的組件進行處理。
這個方案實際上涉及兩個方面:
l處理流程的規(guī)范化——把處理流程分成幾個步驟(任務(wù)),用清晰的邏輯主線把所有步驟串聯(lián)起來。
l處理流程的組件化——處理流程中的每一步(任務(wù))都被定義為一個接口,每個接口都被賦予不同的實現(xiàn)。
治療過程的標(biāo)準(zhǔn)化是目的,治療過程的步驟劃分和過程定義是手段。因此,處理流程標(biāo)準(zhǔn)化的主要內(nèi)容是考慮一個通用Servlet響應(yīng)程序應(yīng)該大致包括的邏輯步驟:
l步驟1-初步處理Http請求,找到對應(yīng)的控制器處理類(方法)-Handler映射。
l步驟2-調(diào)用相應(yīng)的控制器處理類(方法)來完成業(yè)務(wù)邏輯處理程序適配器。
l步驟3-處理控制器處理類(方法)調(diào)用時可能出現(xiàn)的異常-handler exc
SpringMVC是怎樣處理請求的?
SpringMVC是基于Java開發(fā)的輕量級Web MVC框架,是目前主流的MVC框架之一。它比Struts更簡單、更安全。這種情況下,你在Java Web開發(fā)工作面試中會經(jīng)常被問到SpringMVC的請求處理流程,很多開發(fā)人員對此還比較模糊。
SpringMVC請求處理流程
或者解釋一下圖片的流程,流程主要包括:
1.在用戶發(fā)起一個Web請求后,他到達一個Web容器(例如Tomcat/Jetty),服務(wù)器將請求對象(HttpServletRequest)交給DispatcherServlet。這里的前端控制器是SpringMVC的核心入口,攔截匹配請求。
2.接收到請求后,前置控制器會在doService()方法中設(shè)置一些屬性,然后將請求交給請求處理程序(request HandlerAdapter)。
3、請求處理適配器找到相應(yīng)的請求處理器(HaNdler)來進一步處理請求(其實就是執(zhí)行這個請求的業(yè)務(wù)方法)。
4.請求處理器處理完請求后,返回一個ModelAndView對象,并再次生成相應(yīng)的頁面給前端控制器,前端控制器將響應(yīng)數(shù)據(jù)返回給客戶端。
以上是SpringMVC請求處理的核心流程,看起來很簡單,但是內(nèi)部做的事情遠不止這些。
那個 這是我的看法。你怎么看待這個問題?歡迎在下方評論區(qū)交流~我是科技領(lǐng)域的創(chuàng)作者,有十年互聯(lián)網(wǎng)行業(yè)經(jīng)驗。歡迎關(guān)注我了解更多科技知識!