久久午夜无码,国产中文资源,Chinese熟女熟妇2乱2,高清五码d一区

當(dāng)前位置:首頁 > 數(shù)據(jù)庫 > 正文

spring mvc工作原理及工作流程 Spring MVC的工作原理是怎樣的

spring mvc工作原理及工作流程 Spring MVC的工作原理是怎樣的

大家好,關(guān)于spring很多朋友都還不太明白,今天小編就來為大家分享關(guān)于MVC的工作原理是怎樣的的知識,希望對各位有所幫助!spring的工作流程spring工作的流程...

大家好,關(guān)于spring很多朋友都還不太明白,今天小編就來為大家分享關(guān)于MVC的工作原理是怎樣的的知識,希望對各位有所幫助!

spring的工作流程

spring工作的流程

流程如下:

1、用戶發(fā)起請求到前端控制器(DispatcherServlet),該控制器會過濾出哪些請求可以訪問Servlet、哪些不能訪問。就是url-pattern的作用,并且會加載springmvc.xml配置文件。

2、前端控制器會找到處理器映射器(HandlerMapping),通過HandlerMapping完成url到controller映射的組件,簡單來說,就是將在springmvc.xml中配置的或者注解的url與對應(yīng)的處理類找到并進(jìn)行存儲,用map<url,handler>這樣的方式來存儲。

3、HandlerMapping有了映射關(guān)系,并且找到url對應(yīng)的處理器,HandlerMapping就會將其處理器(Handler)返回,在返回前,會加上很多攔截器。

4、DispatcherServlet拿到Handler后,找到HandlerAdapter(處理器適配器),通過它來訪問處理器,并執(zhí)行處理器。

5、執(zhí)行處理器

6、處理器會返回一個ModelAndView對象給HandlerAdapter

7、通過HandlerAdapter將ModelAndView對象返回給前端控制器(DispatcherServlet)

8、前端控制器請求視圖解析器(ViewResolver)去進(jìn)行視圖解析,根據(jù)邏輯視圖名解析成真正的視圖(jsp),其實(shí)就是將ModelAndView對象中存放視圖的名稱進(jìn)行查找,找到對應(yīng)的頁面形成視圖對象

9、返回視圖對象到前端控制器。

10、視圖渲染,就是將ModelAndView對象中的數(shù)據(jù)放到request域中,用來讓頁面加載數(shù)據(jù)的。

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

springmvc 多步流程

工作流程(12步)

1.DispatcherServlet(前端控制器)接收用戶的請求;

2.DispatcherServlet調(diào)用HandlerMapping(處理器映射器),找到合適的Handler;

3.HandlerMapping(處理器映射器)返回HandlerExecutionChain(合適的Handler的位置)給DispatcherServlet;

4.發(fā)送請求到HandlerAdapter(處理器適配器)(打一個比方:家用電的電壓為220V,我們的電腦或手機(jī)所需要的電壓各不相同,所以就需要有電源適配器來起到橋梁作用,這里的處理器適配器也是同樣的作用);

5.HandlerAdapter(處理器適配器)將請求交給Handler(處理器)去執(zhí)行;

6.Handler(處理器)執(zhí)行請求,并將處理后的結(jié)果封裝成為一個ModelAndView對象,返回給HandlerAdapter(處理器適配器);

7.HandlerAdapter(處理器適配器)將ModelAndView對象返回給DispatcherServlet;

8.DispatcherServlet調(diào)用InternalResourceViewResolver(視圖解析器)請求視圖解析;

9.InternalResourceViewResolver(視圖解析器)解析視圖后返回給DispatcherServlet;

10.DispatcherServlet請求渲染視圖;

11.View(視圖)將渲染好的視圖返回給DispatcherServlet;

12.DispatcherServlet響應(yīng)用戶的請求。

什么是springmvc

SpringMVC(Model-View-Controller)是一個基于MVC設(shè)計模式的Web框架,用于創(chuàng)建Web應(yīng)用程序。SpringMVC框架使用經(jīng)典的模型-視圖-控制器模式,其中模型表示應(yīng)用程序中用于處理數(shù)據(jù)的對象,視圖表示呈現(xiàn)GUI的用戶界面,控制器使用模型和視圖組合來實(shí)現(xiàn)業(yè)務(wù)邏輯。

SpringMVC框架是Spring框架的一部分,通過將其與Spring框架相結(jié)合,可以實(shí)現(xiàn)基于MVC的Web應(yīng)用程序的完整堆棧開發(fā)。SpringMVC框架提供了一個靈活的請求處理流程,使開發(fā)人員能夠?qū)崿F(xiàn)自定義路由邏輯和響應(yīng)數(shù)據(jù)格式。

此外,SpringMVC提供了許多內(nèi)置的HTTP請求處理器,它們負(fù)責(zé)與服務(wù)器通信以及處理來自客戶端的請求和響應(yīng)??傊琒pringMVC框架是一個功能強(qiáng)大且靈活的Web框架,廣泛應(yīng)用于企業(yè)級Web應(yīng)用程序開發(fā)中。

spring mvc原理詳解

SpringMVC運(yùn)行原理

1.客戶端請求提交到DispatcherServlet

2.由DispatcherServlet控制器查詢一個或多個HandlerMapping,找到處理請求的Controller

3.DispatcherServlet將請求提交到Controller

4.Controller調(diào)用業(yè)務(wù)邏輯處理后,返回ModelAndView

5.DispatcherServlet查詢一個或多個ViewResoler視圖解析器,找到ModelAndView指定的視圖

6.視圖負(fù)責(zé)將結(jié)果顯示到客戶端

mvc操作流程

SpringMVC工作流程描述:

1.用戶向服務(wù)器發(fā)送請求,請求被Spring前端控制ServeltDispatcherServlet捕獲;

2.DispatcherServlet對請求URL進(jìn)行解析,得到請求資源標(biāo)識符(URI)。然后根據(jù)該URI,調(diào)用HandlerMapping獲得該Handler配置的所有相關(guān)的對象(包括Handler對象以及Handler對象對應(yīng)的攔截器),最后以HandlerExecutionChain對象的形式返回;

3.DispatcherServlet根據(jù)獲得的Handler,選擇一個合適的HandlerAdapter;

4.提取Request中的模型數(shù)據(jù),填充Handler入?yún)?,開始執(zhí)行Handler(Controller)。

在填充Handler的入?yún)⑦^程中,根據(jù)你的配置,Spring將幫你做一些額外的工作:

HttpMessageConveter:將請求消息(如Json、xml等數(shù)據(jù))轉(zhuǎn)換成一個對象,將對象轉(zhuǎn)換為指定的響應(yīng)信息。

數(shù)據(jù)轉(zhuǎn)換:對請求消息進(jìn)行數(shù)據(jù)轉(zhuǎn)換。如String轉(zhuǎn)換成Integer、Double等。

數(shù)據(jù)根式化:對請求消息進(jìn)行數(shù)據(jù)格式化。如將字符串轉(zhuǎn)換成格式化數(shù)字或格式化日期等。

數(shù)據(jù)驗證:驗證數(shù)據(jù)的有效性(長度、格式等),驗證結(jié)果存儲到BindingResult或Error中。

5.Handler執(zhí)行完成后,向DispatcherServlet返回一個ModelAndView對象;

6.根據(jù)返回的ModelAndView,選擇一個適合的ViewResolver(必須是已經(jīng)注冊到Spring容器中的ViewResolver)返回給DispatcherServlet;

7.ViewResolver結(jié)合Model和View,來渲染視圖;

8.將渲染結(jié)果返回給客戶端。

spring框架最簡單講解

回答如下:Spring框架是一個開源的Java開發(fā)框架,它提供了一種簡化企業(yè)級應(yīng)用開發(fā)的方式。它的核心思想是基于依賴注入(DI)和面向切面編程(AOP)。

依賴注入是指Spring框架通過配置文件或注解的方式,自動將對象之間的依賴關(guān)系注入到對象中,而不需要手動創(chuàng)建和管理這些對象。這樣可以降低開發(fā)者的工作量,并且使得代碼更加靈活和可維護(hù)。

面向切面編程是指Spring框架可以在不改變原有代碼的情況下,通過添加額外的功能來增強(qiáng)應(yīng)用程序的功能。例如,可以通過AOP在方法調(diào)用前后添加日志記錄、事務(wù)管理等功能,而不需要修改原有的業(yè)務(wù)邏輯代碼。

除了依賴注入和面向切面編程,Spring框架還提供了眾多的模塊和功能,如SpringMVC用于開發(fā)Web應(yīng)用程序、SpringJDBC用于數(shù)據(jù)庫訪問、SpringSecurity用于安全認(rèn)證和授權(quán)等等。這些模塊可以根據(jù)需要選擇使用,使得開發(fā)者能夠更加高效地開發(fā)出高質(zhì)量的應(yīng)用程序。

總的來說,Spring框架的核心思想是通過依賴注入和面向切面編程來簡化企業(yè)級應(yīng)用開發(fā),提高開發(fā)效率和代碼質(zhì)量。

好了,文章到此結(jié)束,希望可以幫助到大家。

@ 2023-夕逆IT-版權(quán)所有

侵權(quán)投訴:newmikke#163.com

桂ICP備2023005595號-11

视频人人草国产| 欧美精品一区二区三区作者| 日本一级二级三级a| 综合激情 亚洲| 国产玖玖资源站免费| 97SE亚洲综合自在线| 日本一道精品免费看| 国产馆第一页在线| 蜜月久久综合国产精品| 女人与公拘交酡全过程| 亚洲小说另类| 国产免费福利不卡在线观看| 成人久久欧亚洲精品无码久久性 | 99√天堂最新版在线中文| 中文字幕大屁股喷水| 夜夜爽无码一区二区三区| 一区二区三区av波多野结衣| 日本女人东京热| 欧么日韩 中文字幕| 亚洲无码天堂| 96亚洲精品久久久蜜桃| 97视频热人人精品免费| FreeXXxXX性开放HD| 久久偷偷视频| 一区二区三区免费精品视频| 肥女熟女AAA毛片| 综合涩涩| 久久伊人一本亚洲| 九九视频精品免费观看| 国产亚洲欧美精品久久| 午夜精品亚洲| 品国产三级国产av| 欧美日韩精品在线一区| 99热国产这里只有国产中文精品久久| 成人在线永久免费| 亚美州无码| 久久精品国产亚洲AV黑人| 国产精品成人无码久久久h| 97超碰人人人| 久操视频在线观看免费| 亚洲第一区欧美日韩|