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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

springMVC——SpringMVC原理详细解析

發布時間:2024/2/28 javascript 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 springMVC——SpringMVC原理详细解析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

SpringMVC

談到這個問題,我們不得不提提之前 Model1 和 Model2 這兩個沒有 Spring MVC 的時代。

?

----Model1 時代?: 很多學 Java 后端比較晚的朋友可能并沒有接觸過 Model1 模式下的 JavaWeb 應用開發。在 Model1 模式下,整個 Web 應用幾乎全部用 JSP 頁面組成,只用少量的 JavaBean 來處理數據庫連接、訪問等操作。這個模式下 JSP 即是控制層又是表現層。顯而易見,這種模式存在很多問題。比如①將控制邏輯和表現邏輯混雜在一起,導致代碼重用率極低;②前端和后端相互依賴,難以進行測試并且開發效率極低;

?

----Model2 時代?:學過 Servlet 并做過相關 Demo 的朋友應該了解“Java Bean(Model)+ JSP(View,)+Servlet(Controller) ”這種開發模式,這就是早期的 JavaWeb MVC 開發模式。Model:系統涉及的數據,也就是 dao 和 bean。View:展示模型中的數據,只是用來展示。Controller:處理用戶請求都發送給 ,返回數據給 JSP 并展示給用戶。

?

Model2 模式下還存在很多問題,Model2的抽象和封裝程度還遠遠不夠,使用Model2進行開發時不可避免地會重復造輪子,這就大大降低了程序的可維護性和復用性。于是很多JavaWeb開發相關的 MVC 框架應該運而生比如Struts2,但是 Struts2 比較笨重。隨著 Spring 輕量級開發框架的流行,Spring 生態圈出現了 Spring MVC 框架, Spring MVC 是當前最優秀的 MVC 框架。相比于 Struts2 , Spring MVC 使用更加簡單和方便,開發效率更高,并且 Spring MVC 運行速度更快。

?

MVC 是一種設計模式,Spring MVC 是一款很優秀的 MVC 框架。Spring MVC 可以幫助我們進行更簡潔的Web層的開發,并且它天生與 Spring 框架集成。Spring MVC 下我們一般把后端項目分為 Service層(處理業務)、Dao層(數據庫操作)、Entity層(實體類)、Controller層(控制層,返回數據給前臺頁面)。

?

對于springMVC簡單原理的圖示,我比較喜歡之前在網上看到的以為大V的圖:

那么SpringMVC web的原理呢,還是這位大佬的圖示和解釋:

?

流程說明(重要):

1.客戶端(瀏覽器)發送請求,直接請求到?DispatcherServlet(前端控制器)。

2.DispatcherServlet?根據請求信息調用?HandlerMapping(處理器映射器),解析請求對應的?Handler。

3.解析到對應的?Handler(也就是我們平常說的?Controller?控制器)后,開始由?HandlerAdapter?(處理器適配器)處理。

4.HandlerAdapter?會根據?Handler來調用真正的處理器開處理請求,并處理相應的業務邏輯。

處理器處理完業務后,會返回一個?ModelAndView?對象,Model?是返回的數據對象,View?是個邏輯上的?View。

5.ViewResolver?(視圖解析器)會根據邏輯?View?查找實際的?View。

6.DispaterServlet?把返回的?Model?傳給?View(視圖渲染)。

7.把?View?返回給請求者(瀏覽器)
?

總結

以上是生活随笔為你收集整理的springMVC——SpringMVC原理详细解析的全部內容,希望文章能夠幫你解決所遇到的問題。

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