亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Spring MVC 執(zhí)行流程的簡(jiǎn)述

 更新時(shí)間:2023年09月25日 09:31:09   作者:某某灬  
這篇文章主要介紹了Spring MVC 執(zhí)行流程的簡(jiǎn)述,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Spring MVC 執(zhí)行流程

啥都不說(shuō),

直接上圖:

在這里插入圖片描述

1. 用戶(hù)發(fā)起請(qǐng)求到前端控制器(DispatcherServlet)

該控制器會(huì)過(guò)濾出哪些請(qǐng)求可以訪(fǎng)問(wèn)Servlet、哪些不能訪(fǎng)問(wèn)。

就是url-pattern的作用,并且會(huì)加載springmvc.xml配置文件。

2. 前端控制器會(huì)找到處理器映射器(HandlerMapping)

通過(guò)HandlerMapping完成url到controller映射的組件,簡(jiǎn)單來(lái)說(shuō),

就是將在springmvc.xml中配置的或者注解的url與對(duì)應(yīng)的處理類(lèi)找到并進(jìn)行存儲(chǔ),用map<url,handler>這樣的方式來(lái)存儲(chǔ)。

3. HandlerMapping有了映射關(guān)系

并且找到url對(duì)應(yīng)的處理器,HandlerMapping就會(huì)將其處理器(Handler)返回,在返回前,會(huì)加上很多攔截器。

4. DispatcherServlet拿到Handler后

找到HandlerAdapter(處理器適配器),通過(guò)它來(lái)訪(fǎng)問(wèn)處理器,并執(zhí)行處理器。

5. 執(zhí)行處理器

6. 處理器會(huì)返回一個(gè)ModelAndView對(duì)象給HandlerAdapter

7. 通過(guò)HandlerAdapter

將ModelAndView對(duì)象返回給前端控制器(DispatcherServlet)

8. 前端控制器請(qǐng)求視圖解析器(ViewResolver)

去進(jìn)行視圖解析,根據(jù)邏輯視圖名解析成真正的視圖(jsp),其實(shí)就是將ModelAndView對(duì)象中存放視圖的名稱(chēng)進(jìn)行查找,找到對(duì)應(yīng)的頁(yè)面形成視圖對(duì)象

9. 返回視圖對(duì)象

到前端控制器

10. 視圖渲染

就是將ModelAndView對(duì)象中的數(shù)據(jù)放到request域中,用來(lái)讓頁(yè)面加載數(shù)據(jù)的。

11. 通過(guò)第8步

通過(guò)名稱(chēng)找到了對(duì)應(yīng)的頁(yè)面,通過(guò)第10步,request域中有了所需要的數(shù)據(jù),那么就能夠進(jìn)行視圖渲染了。最后將其返回即可。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • java編程ThreadLocal上下傳遞源碼解析

    java編程ThreadLocal上下傳遞源碼解析

    這篇文章主要為大家介紹了java編程中ThreadLocal提供的上下傳遞方式的源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2022-03-03
  • 淺談Java中的可變參數(shù)

    淺談Java中的可變參數(shù)

    下面小編就為大家?guī)?lái)一篇淺談Java中的可變參數(shù)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-10-10
  • Mybatis一對(duì)多查詢(xún)的兩種姿勢(shì)(值得收藏)

    Mybatis一對(duì)多查詢(xún)的兩種姿勢(shì)(值得收藏)

    這篇文章主要給大家介紹了關(guān)于Mybatis一對(duì)多查詢(xún)的兩種姿勢(shì),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • 詳解Java中字符流與字節(jié)流的區(qū)別

    詳解Java中字符流與字節(jié)流的區(qū)別

    這篇文章主要為大家詳細(xì)介紹了Java中字符流與字節(jié)流的區(qū)別,這兩個(gè)的概念易混淆,今天就為大家進(jìn)行詳細(xì)區(qū)分,感興趣的小伙伴們可以參考一下
    2016-04-04
  • Java中實(shí)現(xiàn)樹(shù)形菜單的兩種方式

    Java中實(shí)現(xiàn)樹(shù)形菜單的兩種方式

    這篇文中,我一共會(huì)用兩種方式來(lái)實(shí)現(xiàn)目錄樹(shù)的數(shù)據(jù)結(jié)構(gòu),兩種寫(xiě)法邏輯是一樣的,只是一種適合新手理解,一種看著簡(jiǎn)單明了但是對(duì)于小白不是很好理解,在這里我會(huì)很詳細(xì)的講解每一步代碼,主要是方便新人看懂,彌補(bǔ)曾經(jīng)自己學(xué)習(xí)過(guò)程中的苦惱,需要的朋友可以參考下
    2023-09-09
  • springboot實(shí)現(xiàn)異步調(diào)用@Async的示例

    springboot實(shí)現(xiàn)異步調(diào)用@Async的示例

    這篇文章主要介紹了springboot實(shí)現(xiàn)異步調(diào)用@Async的示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • mybatis spring配置SqlSessionTemplate的使用方式

    mybatis spring配置SqlSessionTemplate的使用方式

    這篇文章主要介紹了mybatis spring配置SqlSessionTemplate的使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • 詳解java nio中的select和channel

    詳解java nio中的select和channel

    這篇文章主要介紹了java nio中的select和channel
    2019-05-05
  • gradle和maven打包時(shí)排除application.properties問(wèn)題

    gradle和maven打包時(shí)排除application.properties問(wèn)題

    文章主要介紹了Gradle、Maven(用于構(gòu)建JAR包)和Maven(用于構(gòu)建WAR包),文章基于個(gè)人經(jīng)驗(yàn),為讀者提供了參考,并鼓勵(lì)大家支持腳本之家
    2024-12-12
  • 認(rèn)識(shí)Java底層操作系統(tǒng)與并發(fā)基礎(chǔ)

    認(rèn)識(shí)Java底層操作系統(tǒng)與并發(fā)基礎(chǔ)

    這篇文章主要介紹了認(rèn)識(shí)Java底層操作系統(tǒng)與并發(fā)基礎(chǔ),文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下
    2022-07-07

最新評(píng)論