SringMVC筆記

SpringMvc主要是三個Servlet:HttpServletBean,FramwworkServlet,DispatcherServlet,它們是依次繼承的關係,其處理過程大體功能以下:app

1.HttpServletBean:沒有參與實際請求的處理。url

2.FramwworkServlet:將不一樣的請求合併到processRequest方法統一處理,processRequest方法中作了三件事。spa

  a.調用了doService模板方法具體處理請求繼承

  b.將當前請求的LocalContext和ServletRequestAttributes在處理請求前設置到了LocalContextHolder和RequestContextHolder,並在請求處理完成後回覆。接口

  c.請求處理完成發佈了ServletRequstHandleEvent消息。get

3.DispatcherServlet:doService方法給request設置了一些屬性並將請求交給doDispatch方法具體處理。
io

 

SpringMvc九大組件:模板

1.HandlerMappping:它的做用是根據request找到相應的處理器Handler和Interceptors,該接口裏面只有一個方法:date

   HandlerExecutionChain getHandler(HttpServletRequest request) throws Exception;request

 

2.HandlerAdapter:Handler適配器。HandlerApdater處理器適配器,做用是根據請求的url找處處理器的調用方法.

   由於SpringMvc中的Handler能夠是任何形式,只要能處理請求。可是Servlet須要的處理方法的結構確是固定的,都是以request和response爲參數的方法,因此就須要HandlerApdater來適配。

相關文章
相關標籤/搜索