Spring相關面試題-整理

1.什麼是Spring MVC?簡單介紹一下你對Spring MVC的理解?

Spring MVC是一個基於Java的實現了MVC設計模式的請求驅動類型的輕量級Web框架,通過把Model,View,Controller分離,將web層進行職責解耦,把複雜的Web應用分成邏輯清晰的幾部分,簡化開發,減少出錯,方便組內開發人員之間的配合。

2.Sprig MVC的流程?

(1)用戶發送請求至前端控制器DispatcherServlet;

(2)DispatcherServlet收到請求後,調用HandlerMapping處理器映射器,請求獲取Handler;

(3)處理器映射器根據請求url找到具體的處理器,生成處理器對象及處理器攔截器(如果有則生成)一併返回給DispatcherServlet;

(4)DispatcherServlet調用HandlerAdapter處理器適配器;

(5)HandlerAdapter經過適配調用具體處理器(Handler,也叫後端控制器);

(6)Handler執行完成返回ModelAndView;

(7)HandlerAdapter將Handler執行結果ModelAndView返回給DispatcherServlet;

(8)DispatchServet將ModelAndView傳給ViewResvoler視圖解析器進行解析;

(9)ViewResvoler解析後返回View;

(10)DispatcherServlet對View進行渲染視圖(即將模型數據填充至視圖中);

(11)DispatcherServlet響應用戶;