MVC原理
四大組件
DispatcherServlet:作為前端控制器,整個流程控制的中心,控制其它組件執行,統一調度,降低組件之間的耦合性,提高每個組件的擴展性。
HandlerMapping:通過擴展處理器映射器實現不同的映射方式,例如:配置文件方式,實現接口方式,注解方式等。
HandlAdapter:通過擴展處理器適配器,支持更多類型的處理器。
ViewResolver:通過擴展視圖解析器,支持更多類型的視圖解析,例如:jsp、freemarker、pdf、excel等。
三次交互
(1) 先發送請求給前端控制器DispatcherServlet,DispatcherServlet調用HandlerMapping處理映射器,找到對應的處理器生成的對象和攔截器,返還給DispatcherServlet.
(2) DispatcherServlet調用HandlerAdapter,經過適配調用適合的Controller,Controller處理完返回ModelAndView,HandlerAdapter將執行結果返還給前端控制器。
(3) 前端控制器將ModelAndView傳給視圖解析器ViewResolver,解析后返回具體的view給前端控制器。
(4)前端控制器根據view進行視圖渲染
(5) 前端控制器響應用戶。