Spring工作流程如下:
1.springmvc請所有的請求都提交給DispatcherServlet,它會委托應用系統的其他模塊負責負責對請求進行真正的處理工作。
2.DispatcherServlet查詢一個或多個HandlerMapping,找到處理請求的Controller.
3.DispatcherServlet請請求提交到目標Controller
4.Controller進行業務邏輯處理後,會返回一個ModelAndView
5.Dispathcher查詢一個或多個ViewResolver視圖解析器,找到ModelAndView對象指定的視圖對象
6.視圖對象負責渲染返回給客戶端。
優點:
1.使用Spring的IOC容器,將對象之間的依賴關系交給Spring,降低組件之間的耦合性,讓我們更專注於應用邏輯
2.可以提供眾多服務,事務管理,WS等。
3.AOP的很好支持,方便面向切面編程。
4.對主流的框架提供了很好的集成支持,如Hibernate,Struts2,JPA等
5.Spring DI機制降低了業務對象替換的復雜性。
6.Spring屬於低侵入,代碼污染極低。
7.Spring的高度可開放性,並不強制依賴於Spring,開發者可以自由選擇Spring部分或全部