乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      MVC設(shè)計模式簡介

       碼農(nóng)9527 2021-10-26

      MVC 設(shè)計模式一般指 MVC 框架,M(Model)指數(shù)據(jù)模型層,V(View)指視圖層,C(Controller)指控制層。使用 MVC 的目的是將 M 和 V 的實現(xiàn)代碼分離,使同一個程序可以有不同的表現(xiàn)形式。其中,View 的定義比較清晰,就是用戶界面。

        在 Web 項目的開發(fā)中,能夠及時、正確地響應(yīng)用戶的請求是非常重要的。用戶在網(wǎng)頁上單擊一個 URL 路徑,這對 Web 服務(wù)器來說,相當(dāng)于用戶發(fā)送了一個請求。而獲取請求后如何解析用戶的輸入,并執(zhí)行相關(guān)處理邏輯,最終跳轉(zhuǎn)至正確的頁面顯示反饋結(jié)果,這些工作往往是控制層(Controller)來完成的。

        在請求的過程中,用戶的信息被封裝在 User 實體類中,該實體類在 Web 項目中屬于數(shù)據(jù)模型層(Model)。

        在請求顯示階段,跳轉(zhuǎn)的結(jié)果網(wǎng)頁就屬于視圖層(View)。

        像這樣,控制層負(fù)責(zé)前臺與后臺的交互,數(shù)據(jù)模型層封裝用戶的輸入/輸出數(shù)據(jù),視圖層選擇恰當(dāng)?shù)囊晥D來顯示最終的執(zhí)行結(jié)果,這樣的層次分明的軟件開發(fā)和處理流程被稱為 MVC 模式。

        在學(xué)習(xí) Servlet 及 JSP 開發(fā)時,JavaBean 相當(dāng)于 Model,Servlet 相當(dāng)于 Controller,JSP 相當(dāng)于 View。

        總結(jié)如下:

        視圖層(View):負(fù)責(zé)格式化數(shù)據(jù)并把它們呈現(xiàn)給用戶,包括數(shù)據(jù)展示、用戶交互、數(shù)據(jù)驗證、界面設(shè)計等功能。

        控制層(Controller):負(fù)責(zé)接收并轉(zhuǎn)發(fā)請求,對請求進(jìn)行處理后,指定視圖并將響應(yīng)結(jié)果發(fā)送給客戶端。

        數(shù)據(jù)模型層(Model):模型對象擁有最多的處理任務(wù),是應(yīng)用程序的主體部分,它負(fù)責(zé)數(shù)據(jù)邏輯(業(yè)務(wù)規(guī)則)的處理和實現(xiàn)數(shù)據(jù)操作(即在數(shù)據(jù)庫中存取數(shù)據(jù))。

        SUN 公司推出 JSP 技術(shù)的同時,也推出了兩種 Web 應(yīng)用程序的開發(fā)模式。即 JSP+JavaBean 和 Servlet+JSP+JavaBean。

        JSP+JavaBean

        JSP+JavaBean 中 JSP 用于處理用戶請求,JavaBean 用于封裝和處理數(shù)據(jù)。該模式只有視圖和模型,一般把控制器的功能交給視圖來實現(xiàn),適合業(yè)務(wù)流程比較簡單的 Web 程序。  通過上圖可以發(fā)現(xiàn) JSP 從 HTTP Request(請求)中獲得所需的數(shù)據(jù),并進(jìn)行業(yè)務(wù)邏輯的處理,然后將結(jié)果通過 HTTP Response(響應(yīng))返回給瀏覽器。從中可見,JSP+JavaBean 模式在一定程度上實現(xiàn)了 MVC,即 JSP 將控制層和視圖合二為一,JavaBean 為模型層。

        JSP+JavaBean 模式中 JSP 身兼數(shù)職,既要負(fù)責(zé)視圖層的數(shù)據(jù)顯示,又要負(fù)責(zé)業(yè)務(wù)流程的控制,結(jié)構(gòu)較為混亂,并且也不是我們所希望的松耦合架構(gòu)模式,所以當(dāng)業(yè)務(wù)流程復(fù)雜的時候并不推薦使用。

        Servlet+JSP+JavaBean

        Servlet+JSP+JavaBean 中 Servlet 用于處理用戶請求,JSP 用于數(shù)據(jù)顯示,JavaBean 用于數(shù)據(jù)封裝,適合復(fù)雜的 Web 程序。  

        相比 JSP+JavaBean 模式來說,Servlet+JSP+JavaBean 模式將控制層單獨(dú)劃分出來負(fù)責(zé)業(yè)務(wù)流程的控制,接收請求,創(chuàng)建所需的 JavaBean 實例,并將處理后的數(shù)據(jù)返回視圖層(JSP)進(jìn)行界面數(shù)據(jù)展示。

        Servlet+JSP+JavaBean 模式的結(jié)構(gòu)清晰,是一個松耦合架構(gòu)模式,一般情況下,建議使用該模式。

        MVC優(yōu)缺點

        任何一件事都有利有弊,下面來了解一下 MVC 的優(yōu)缺點。

        優(yōu)點

        多視圖共享一個模型,大大提高了代碼的可重用性

        MVC 三個模塊相互獨(dú)立,松耦合架構(gòu)

        控制器提高了應(yīng)用程序的靈活性和可配置性

        有利于軟件工程化管理

        總之,我們通過 MVC 設(shè)計模式最終可以打造出一個松耦合+高可重用性+高可適用性的完美架構(gòu)。

        缺點

        原理復(fù)雜

        增加了系統(tǒng)結(jié)構(gòu)和實現(xiàn)的復(fù)雜性

        視圖對模型數(shù)據(jù)的低效率訪問

        MVC 并不適合小型甚至中型規(guī)模的項目,花費(fèi)大量時間將 MVC 應(yīng)用到規(guī)模并不是很大的應(yīng)用程序,通常得不償失,所以對于 MVC 設(shè)計模式的使用要根據(jù)具體的應(yīng)用場景來決定。

        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多