日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

spring-MVC源码解读(一)

發布時間:2025/5/22 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 spring-MVC源码解读(一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、mcv整體架構和流程

  • 用戶發送請求至前端控制器 DispatcherServlet
  • DispatcherServlet 收到請求調用 HandlerMapping 處理器映射器
  • 處理器映射器根據請求 url 找到具體的處理器,生成處理器對象及處理器攔截器(如果有則生成)一并返回給 DispatcherServlet
  • DispatcherServlet 通過 HandlerAdapter 處理器適配器調用處理器Handler
  • Handler執行處理器鏈(Controller,也叫后端控制器)
  • Controller 執行完成返回 ModelAndView
  • HandlerAdapter 將 controller 執行結果 ModelAndView 返回給 DispatcherServlet
  • DispatcherServlet 將 ModelAndView 傳給 ViewReslover 視圖解析器
  • ViewReslover 解析后返回具體 View
  • DispatcherServlet傳遞Model 對 View 進行渲染視圖(即將模型數據填充至視圖中)
  • DispatcherServlet 響應用戶

2、SpringMVC 框架組件概述

在 SpringMVC 的各個組件中,處理器映射器、處理器適配器、視圖解析器稱為 SpringMVC 的三大組件。

  • DispatcherServlet:前端控制器

    用戶請求到達前端控制器,它就相當于 MVC 模式中的 C 層,DispatcherServlet 是整個流程控制的中心,由它調用其它組件處理用戶的請求,DispatcherServlet 的存在降低了組件之間的耦合性。
  • HandlerMapping:處理器映射器

    HandlerMapping 負責根據用戶請求 url 找到 Handler 處理器,SpringMVC 提供了不同的映射器實現不同的映射方式,如配置文件方式、實現接口方式、注解方式等。
  • Handler:處理器

    Handler 是繼 DispatcherServlet 前端控制器的后端控制器,在 DispatcherServlet 的控制下 Handler 對具體的用戶請求進行處理。由于 Handler 涉及到具體的用戶業務請求,所以一般情況需要程序員根據業務需求開發 Handler 。
  • HandlAdapter:處理器適配器

    通過 HandlerAdapter 對處理器進行執行,這是適配器模式的應用,通過擴展適配器可以對更多類型的處理器進行執行。
  • ViewResolver:視圖解析器

    View Resolver 負責將處理結果生成 View 視圖,View Resolver 首先根據邏輯視圖名解析成物理視圖名即具體的頁面地址,再生成View 視圖對象,最后對View進行渲染將處理結果通過頁面展示給用戶。
  • View:視圖

    SpringMVC 框架提供了很多的 View 視圖類型的支持,w而我們開發中最常用的視圖是 jsp 。

3、SpringMVC 配置詳解

springmvc.xml

  • 配置組件掃描器

    <context:component-scan base-package="com.springmvc.controller" />
  • 配置處理器映射器

    <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping" />
  • 配置處理器適配器

    <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter" />
  • 配置注解驅動

    <mvc:annotation-driven />
  • 配置視圖解析器

    <bean
    class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <!-- 配置邏輯視圖的前綴 -->
    <property name="prefix" value="/jsp/" />
    <!-- 配置邏輯視圖的后綴 -->
    <property name="suffix" value=".jsp" />
    </bean>
  • 最終 jsp 物理地址:前綴 + 邏輯視圖名 + 后綴,以上是springMvc的基本配置骨架,其中的組件都可以自由詳細配置。
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的spring-MVC源码解读(一)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 1024精品一区二区三区日韩 | 色哟哟在线免费观看 | 又黄又爽在线观看 | 人妻一区二区三 | 久久久久免费观看 | 精品91自产拍在线观看二区 | 成年人视频在线播放 | 国产精品国产三级国产aⅴ无密码 | 草久久 | 日韩一二三四区 | 中文字幕亚洲激情 | 色狠狠一区 | 亚洲一区二区三区婷婷 | 综合在线播放 | www夜片内射视频日韩精品成人 | 亚洲av无码专区首页 | 久久夜夜操 | 中文无码熟妇人妻av在线 | 人体私拍套图hdxxxx | 一区二区国产在线 | aaaa级片 | 午夜男人天堂 | 小仙女av| 污污的视频在线观看 | 91碰碰| 国产一区视频网站 | 欧美性做爰猛烈叫床潮 | 一区二区三区高清在线观看 | 99在线免费视频 | 黄视频免费在线观看 | 狠狠澡| 日本在线一区二区 | 丝袜诱惑一区二区 | 少妇人妻偷人精品一区二区 | 日韩女优在线视频 | 亚洲精品国产精品国自产网站按摩 | 波多一区| 99ri国产| 日批免费网站 | 亚洲三级小说 | 国产精品欧美一区喷水 | 久久久久久久久久久久 | 国产成人精品一区二区三区视频 | 99er在线观看 | 香蕉啪啪网 | 亚洲逼图| 男人操女人的网站 | 涩涩五月天 | 中文字幕网伦射乱中文 | 97视频总站 | free性m.freesex欧美| 激情女主播| 日韩一页| 无码人妻久久一区二区三区不卡 | 抱着老师的嫩臀猛然挺进视频 | 国产精品久久久无码一区 | 亚洲一区二区三区四区五区六区 | 毛片a片免费观看 | 久色电影| 欧美亚洲一区二区三区 | av福利院| 国产乱码精品一区二区三区忘忧草 | 无码人妻aⅴ一区二区三区玉蒲团 | 欧美成人自拍 | 欧美精品aaa | 天天色小说| 免费一级做a爰片久久毛片潮 | 韩国av三级| 日本东京热一区二区三区 | 亚洲激情成人 | 在线观看成人小视频 | 日韩在线视频第一页 | 丰满少妇高潮久久三区 | youjizz中国少妇 | 欧洲精品无码一区二区 | 9191在线视频 | 中文字幕精品一区二区精品 | 欧美久久久久久久久久久久久久 | 天天操狠狠操 | 久久一区二区精品 | 在线观看久草 | a久久久久 | 美女干b视频 | 久草大 | 99在线免费 | 大陆av在线播放 | 亚洲天码中字 | 爆乳熟妇一区二区三区霸乳 | 国产精品suv一区二区三区 | 特高潮videossexhd| 青青草av在线播放 | 亚洲免费av一区二区 | 人人干在线视频 | 可以免费看的黄色网址 | 天天摸天天干 | 少妇人妻一区二区三区 | 国产精品第7页 | 伊人av网站 | 抽插丰满内射高潮视频 |