免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
MVC設(shè)計(jì)模式簡介

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

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

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

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

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

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

  總結(jié)如下:

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

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

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

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

  JSP+JavaBean

  JSP+JavaBean 中 JSP 用于處理用戶請(qǐng)求,JavaBean 用于封裝和處理數(shù)據(jù)。該模式只有視圖和模型,一般把控制器的功能交給視圖來實(shí)現(xiàn),適合業(yè)務(wù)流程比較簡單的 Web 程序。

  通過上圖可以發(fā)現(xiàn) JSP 從 HTTP Request(請(qǐng)求)中獲得所需的數(shù)據(jù),并進(jìn)行業(yè)務(wù)邏輯的處理,然后將結(jié)果通過 HTTP Response(響應(yīng))返回給瀏覽器。從中可見,JSP+JavaBean 模式在一定程度上實(shí)現(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ù)雜的時(shí)候并不推薦使用。

  Servlet+JSP+JavaBean

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

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

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

  MVC優(yōu)缺點(diǎn)

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

  優(yōu)點(diǎn)

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

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

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

  有利于軟件工程化管理

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

  缺點(diǎn)

  原理復(fù)雜

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

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

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

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Java學(xué)習(xí)路線分享SpringMVC之MVC概述
MVC模式簡介
Struts用戶手冊(cè)翻譯(1)
第一章 Web MVC簡介
深入理解MVC
JavaEE概述及MVC模型
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服