麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

springMVC 源碼解讀系列(一)初始化

2019-11-14 21:15:36
字體:
來源:轉載
供稿:網友
sPRingMVC 源碼解讀系列(一)初始化

先看看DispatcherServlet的類機構:

初始化時序圖:

servlet初始化會調用 init 方法,換句話說就是springMVC進行初始化的時候首先會去執行HttpServletBean的init方法, 下面看看HttpServletBean的源碼:

上面這段代碼主要是在獲取你在web.xml中配置在<init-param>中的屬性(例如:namespace,contextConfigLocation)。 其中有一點值得注意,那就是initServletBean() 這個方法是由其子類 FrameworkServlet 實現,因此, 接下來 FramworkServlet 會執行 initServletBean 這個方法,下面就繼續看看 initServletBean 方法源碼:

可以看到initServletBean 方法中就調用了一個 initFrameworkServlet 方法和initWebapplicationContext 方法,其中initFrameworkServlet方法是由子類實現,這個不多說,直接看initWebApplicationContext 方法源碼:

代碼注釋部分已給出解析, 此處不再分析, 上面代碼調用了一次createWebApplicationContext方法, 下面就看看這個方法的源碼:

以上就是創建webApplicationContext的代碼,注釋已給出。

還記得FrameworkServlet初始化的時候會調用onRefresh()方法嗎,這個方法是留給其子類DispatcherServlet調用的, 最后就該看看DispatcherServlet里面的 onRefresh 方法了:

可以看到onRefresh方法就一句話,調用initStrategies方法, 上面給出了 initStrategies 源碼, 很直觀,就是在初始化springMVC 的一系列組件, 但是此處你要明白,SpringMVC的組件其實已經在webApplicationContext創建時就已經實例化了, 此處所謂的初始化只是在選擇合適的組件(每一個組件都對應了幾個不同的實現)。OK, 至此, springMVC 的初始化完成!


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产日韩精品欧美一区视频 | 国产亚洲精品综合一区91555 | 久久国产精品免费视频 | 羞羞视频免费视频欧美 | 欧美日韩亚洲另类 | 成年免费看 | 欧美日本一 | 精品国产乱码久久久久久丨区2区 | 日韩视频一区二区三区四区 | 免费a级毛片大学生免费观看 | av在线免费看网址 | 7m视频成人精品分类 | 国产一区二区精彩视频 | 久久久久久久久免费 | 久草在线资源福利站 | 黄网站免费观看视频 | 久久精品探花 | 久久色伦理资源站 | 97久色| 国色天香综合网 | 原来神马影院手机版免费 | 99亚洲伊人久久精品影院红桃 | 视频一区二区不卡 | 欧美日韩在线播放一区 | 成码无人av片在线观看网站 | 久久久久久艹 | 国产一国产一级毛片视频 | 男人天堂新地址 | 一本色道久久综合狠狠躁篇适合什么人看 | 亚洲射情| www成人在线观看 | 久久9999久久 | 亚洲第一综合色 | 精品国产欧美一区二区 | 天天夜天天操 | 毛片视频网址 | 国产人成免费爽爽爽视频 | 欧美日韩大片在线观看 | av电影观看 | 久久99精品国产99久久6男男 | 有兽焉免费动画 |