更新時間:2020-06-02 16:08:54 來源:動力節點 瀏覽2154次
今天,讓我們一起來看看SpringMVC的組件解析,主要內容有SpringMVC的執行流程、SpringMVC組件解析、SpringMVC注解解析和SpringMVC的XML配置解析。下面一起來看看詳細內容吧~
(1)用戶發送請求至前端控制器DispatcherServlet。
(2)DispatcherServlet收到請求調用HandlerMapping處理器映射器。
(3)處理器映射器找到具體的處理器(可以根據xml配置、注解進行查找),生成處理器對象及處理器攔截器(如果有則生成)一并返回給DispatcherServlet。
(4)DispatcherServlet調用HandlerAdapter處理器適配器。
(5)HandlerAdapter經過適配調用具體的處理器(Controller,也叫后端控制器)。
(6)Controller執行完成返回ModelAndView。
(7)HandlerAdapter將controller執行結果ModelAndView返回給DispatcherServlet。
(8)DispatcherServlet將ModelAndView傳給ViewReslover視圖解析器。
(9)ViewReslover解析后返回具體View。
(10)DispatcherServlet根據View進行渲染視圖(即將模型數據填充至視圖中)。DispatcherServlet響應用戶。
(1)前端控制器:DispatcherServlet
用戶請求到達前端控制器,它就相當于MVC模式中的C,DispatcherServlet是整個流程控制的中心,由它調用其它組件處理用戶的請求,DispatcherServlet的存在降低了組件之間的耦合性。
(2)處理器映射器:HandlerMapping
HandlerMapping負責根據用戶請求找到Handler即處理器,SpringMVC提供了不同的映射器實現不同的映射方式,例如:配置文件方式,實現接口方式,注解方式等。
(3)處理器適配器:HandlerAdapter
通過HandlerAdapter對處理器進行執行,這是適配器模式的應用,通過擴展適配器可以對更多類型的處理器進行執行。
(4)處理器:Handler
它就是我們開發中要編寫的具體業務控制器。由DispatcherServlet把用戶請求轉發到Handler。由Handler對具體的用戶請求進行處理。
(5)視圖解析器:View Resolver
View Resolver負責將處理結果生成View視圖,View Resolver首先根據邏輯視圖名解析成物理視圖名,即具體的頁面地址,再生成View視圖對象,最后對View進行渲染將處理結果通過頁面展示給用戶。
(6)視圖:View
SpringMVC框架提供了很多的View視圖類型的支持,包括:jstlView、freemarkerView、pdfView等。最常用的視圖就是jsp。一般情況下需要通過頁面標簽或頁面模版技術將模型數據通過頁面展示給用戶,需要由程序員根據業務需求開發具體的頁面。
RequestMapping
作用:用于建立請求URL和處理請求方法之間的對應關系。
位置:類上,請求URL的第一級訪問目錄。此處不寫的話,就相當于應用的根目錄方法上,請求URL的第二級訪問目錄,與類上的使用 ReqquestMapping標注的一級目錄一起組成訪問虛擬路徑。
屬性:value用于指定請求的URL。它和path屬性的作用是一樣的;method用于指定請求的方式;params用于指定限制請求參數的條件。它支持簡單的表達式。要求請求參數的key和value必須和配置的一模一樣。
例如:
params={"accountName"},表示請求參數必須有accountName
params={"moeny!100"},表示請求參數中money不能是100
(1)mvc命名空間引入
(2)組件掃描
SpringMVC基于Spring容器,所以在進行SpringMVC操作時,需要將Controller存儲到Spring容器中,如果使用 Controller注解標注的話,就需要使用<context:component-scan base-package=“com.itheima.controller"/>進行組件掃描。
SpringMVC有默認組件配置,默認組件都是DispatcherServlet.properties配置文件中配置的,該配置文件地址org/springframework/web/servlet/DispatcherServlet.properties,該文件中配置了默認的視圖解析器,如下:
org.springframework.web.servlet.ViewResolver=org.springframework.web.servlet.view.Inter
nalResourceViewResolver
(1)視圖解析器
我們可以通過屬性注入的方式修改視圖的的前后綴
<!--配置內部資源視圖解析器-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix"value="/WEB-INF/views/"></property>
<property name="suffix"value=".jsp"></property>
</bean>
總結一下的知識要點,SpringMVC的相關組件包括前端控制器、處理器映射器、處理器適配器、處理器、視圖解析器和視圖。SpringMVC請求映射注解 RequestMapping,視圖解析器配置:
REDIRECT_URL_PREFIX="redirect:"
FORWARD_URL_PREFIX="forward:"
prefix="";
suffix="";
Java框架相關視頻
SpringMVC視頻教程:http://m.dabaquan.cn/javavideo/126.html
以上就是動力節點java培訓機構的小編針對“Java集合框架學習視頻之SpringMVC的組件解析”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習