摘要:先用一個圖來表示基本流程圖這個網上很容易找到基本流程圖用戶發送請求到前端控制器前端控制器是的重要部分,位于中心,提供整個框架訪問點,起到交換的作用,而且與容器集成。在配置這個監聽器,啟動容器時,就會默認執行它實現的方法。
先用一個圖來表示
基本流程圖這個網上很容易找到
基本流程圖
1. 用戶發送請求到前端控制器(DispatcherServlet)
前端控制器是springMVC的重要部分,位于中心,提供整個框架訪問點,起到交換的作用,而且與Spring IoC容器集成。(IoC容器中包含了Bean,詳細IoC講解開濤的博客)
在實際開發中,只需要在web.xml中進行配置,其他組件由框架提供,配置如下:
springMVC org.springframework.web.servlet.DispatcherServlet contextConfigLocation classpath:spring/springmvc.xml springMVC *.action
通過過濾(根據URL)的方式進入前端控制器(init-param標簽中的contextConfigLocation會在后面說到)
2和3. 處理器映射器HandlerMapping
根據請求的url查找Handler
HandlerMapping負責根據用戶請求找到Handler即處理器,springmvc提供了不同的映射器實現不同的映射方式,例如:配置文件方式,實現接口方式,注解方式等。在spring.xml中使用自動掃描的方式:
然后返回前端控制器
4. 處理器適配器HandlerAdapter
需要controller繼承Controller或者@Controller,前端控制器會根據controller對應的controller類型來調用相應的HandlerAdapter來進行處理,不需要什么操作
5和6和7. 處理器Handler
就是編寫Controller類
``` @Controller public class TestController { @Autowired private TestService testService; //信息查詢 @RequestMapping("/test") public ModelAndView test() throws Exception{ ListtestList=testService.findTestList(null); ModelAndView modelAndView=new ModelAndView(); //相當于request中setAttribute modelAndView.addObject("testList",testList); modelAndView.setViewName("test"); return modelAndView; } } ```
返回ModelAndView對象
8和9. 視圖解析器View resolver
進行視圖解析,根據邏輯視圖名解析成真正的視圖(view)。View Resolver負責將處理結果生成View視圖:View Resolver首先根據邏輯視圖名解析成物理視圖名即具體的頁面地址,再生成View視圖對象,最后對View進行渲染將處理結果通過頁面展示給用戶。
在spring.xml中配置
10和11. 視圖View
編寫JSP、excel、pdf等向用戶顯示的內容
其他
contextConfigLocation實現ContextLoaderListener監聽器,在web.xml中定義
contextConfigLocation classpath:spring/applicationContext-*.xml org.springframework.web.context.ContextLoaderListener
ContextLoaderListener監聽器的作用就是啟動Web容器時,自動裝配ApplicationContext的配置信息。在web.xml配置這個監聽器,啟動容器時,就會默認執行它實現的方法。
在這里使用這個監聽器的作用是方便加載Dao、Service、DataSource、Bean等,如applicationContext-dao.xml,applicationContext-service.xml。如果使用mybatis這些配置文件中可以加入mapper.xml文件,提供數據庫操作
謝謝瀏覽~~~
如果有不正確的地方歡迎指出~~~
≥ω≤ ≥ω≤ ≥ω≤
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/76828.html
摘要:引言剛考完期末,再也不用考試啦最近學習了慕課網的實戰課手寫,劍指開源框架靈魂。最近將本課程和看透結合起來學習,感覺受益匪淺,同時,糾正了我之前對的一些誤解。誤解洪荒時代的當年,開發都需要手動去實現。為了解決太多的問題,引入了,進行統一調度。 引言 剛考完期末,再也不用考試啦!!! 最近學習了慕課網的實戰課《手寫SpringMVC,劍指開源框架靈魂》。 showImg(https://s...
摘要:是目前最流行的一種互聯網軟件架構。協議,是一個無狀態協議,即所有的狀態都保存在服務器端。而這種轉化是建立在表現層之上的,所以就是表現層狀態轉化。具體說,就是協議里面,四個表示操作方式的動詞。 一、SpringMVC概述 Spring為展現層提供的基于MVC設計理念的優秀的Web框架,是目前最主流的MVC框架之一 Spring3.0之后全面超越Struts2,成為最優秀的MVC框架 S...
摘要:也就是說映射器就是用于處理什么樣的請求提交給處理。這和是一樣的提交參數的用戶名編號提交配置處理請求注冊映射器包框架接收參數設置無參構造器,里邊調用方法,傳入要封裝的對象這里的對象就表示已經封裝好的了對象了。 什么是SpringMVC? SpringMVC是Spring家族的一員,Spring是將現在開發中流行的組件進行組合而成的一個框架!它用在基于MVC的表現層開發,類似于struts...
閱讀 3462·2019-08-30 10:54
閱讀 3158·2019-08-29 16:38
閱讀 2182·2019-08-26 14:06
閱讀 1520·2019-08-23 15:39
閱讀 3044·2019-08-23 15:37
閱讀 2891·2019-08-23 13:50
閱讀 3196·2019-08-22 17:14
閱讀 2391·2019-08-22 15:44