1 、什么是SpringMVC
SpringMVC是一個基於MVC的web框架,屬於Spring中的一個模塊,它和Spring不需要通過中間層進行整合就可以一起使用。
2、SpringMVC運行過程
1. 發起請求到前端控制器(DispatcherServlet)
2. 前端控制器請求HandlerMapping查找Handler,可根據xml文件配置或者注解進行查找。
3.處理器映射器HandlerMapping向前端控制器返回Handler。
4.前端控制器調用處理器適配器去執行Handler。
5.處理器適配器去執行Handler。
6.Handler執行完給適配器返回ModelAndView。
7.處理器適配器給前端控制器返回ModelAndView。ModelAndView是SpringMVC框架的一個底層對象,包括Model和View。
8.前端控制器請求視圖解析器去進行視圖解析,根據邏輯視圖名解析成真正的視圖。
9.視圖解析器向前端控制器返回view。
10.前端控制器進行視圖渲染,將模型數據(ModelAndView對象中)填充到request域中。
11.前端控制器向用戶響應結果。
3、SpringMVC組件說明
1.前端控制器(DispatcherServlet)
(1). 不需要進行開發。
(2). 作用:接受請求,響應結果,相當於一個轉發器。
(3). 減少了其他組件的耦合度。
2.處理器映射器(HandlerMapping)
(1). 不需要進行開發。
(2). 作用:根據請求的URL查找Handler。
3.處理器適配器(HandlerAdapter)
(1). 不需要進行開發。
(2). 作用:按照特定的規則去執行Handler。
4.處理器(Handler)
(1). 需要進行開發。
(2). 要求:必須要按照HandlerAdapter的要求去編寫。
5.視圖解析器(View Resolver)
(1). 不需要進行開發。
(2). 作用:進行視圖解析,根據邏輯視圖名解析成真正的視圖(View)
6.視圖(View )
(1). 需要進行開發。
(2). 說明:View是一個接口,實現類支持不同的View類型(jsp、freemaker、pdf.........)