1. 程式人生 > 其它 >SpringMVC-簡介

SpringMVC-簡介

SpringMVC是什麼

SpringMVC是SpringFramework的一部分,基於Java實現MVC的輕量級Web框架(【官方文件】

為什麼要學SpringMVC

  • 輕量級,簡單易學
  • 高效,基於請求響應的MVC框架
  • 與Spring相容性好,無縫結合
  • 約定大於配置
  • 功能強大:RESTful風格,資料驗證,格式化,本地化,主題等等
  • 簡潔靈活
  • 用的人&公司多

中心控制器DispatcherServlet

SpringMVC圍繞DispatcherServlet[排程servlet]設計,DispatcherServlet的作用是將請求分發到不同的處理器(自Spring2.5+JDK1.5開始,可用基於註解的controller宣告)

SpringMVC執行原理&流程

  1. 【DispatcherServlet】:前置控制器,是整個SpringMVC的控制中心,使用者發出請求,DispatcherServlet收到請求並攔截請求
    • SpringMVC配置在伺服器web站點
    • hello則表示控制器
    • 如上url則表示為:請求位於localhost:8080上的springmvc站點的hello控制器
  1. 【HandlerMapping】:處理器對映,DIspatcherServlet呼叫HandlerMapping,HandlerMapping根據請求url查詢Handler
  2. 【HandlerExecution】:具體的Handler,主要作用是根據url查詢控制器(如上url中的控制器hello)。
  3. HandlerExecution將解析後的資訊傳遞給DispatcherServlet(如解析控制器對映等等)
  4. 【HandlerAdapter】:處理器介面卡,按照特定規則執行Handler
  5. Handler讓具體的Controller執行。
  6. 【Controller】將具體的執行資訊返回給HandlerAdapter(如ModelAndVIew)。
  7. HandlerAdapter將檢視邏輯名或模型傳遞給DispatcherServlet。
  8. DispatcherServlet呼叫檢視解析器(ViewResolver)解析HandlerAdapter傳遞的邏輯檢視名。
  9. 檢視解析器將解析的邏輯檢視傳給DispatcherServlet。
  10. DispatcherServlet根據檢視解析器解析的檢視結果,呼叫具體的檢視。
  11. 將檢視渲染呈現給使用者
    【看到這,大概執行流程你應該已經瞭解了,現在可以對照流程碼一下。沒懂?多碼幾遍,自然就懂了(狗頭保命)】