<meta charset="utf-8">
<article class="_2rhmJa">
我們的開發(fā)架構一般都是基于兩種形式学辱,一種是 C/S 架構润绎,也就是客戶端/服務器疼邀,另一種是 B/S 架構撮执,也就
是瀏覽器服務器轮傍。在 JavaEE 開發(fā)中汽馋,幾乎全都是基于 B/S架構的開發(fā)纺讲。那么在 B/S架構中未檩,系統(tǒng)標準的三層架構
包括:表現(xiàn)層蕾总、業(yè)務層、持久層缀程。三層架構在我們的實際開發(fā)中使用的非常多摆昧,所以我們課程中的案例也都是基于
三層架構設計的。
三層架構中,每一層各司其職礼殊,接下來我們就說說每層都負責哪些方面:
表現(xiàn)層:
也就是我們常說的web層。它負責接收客戶端請求,向客戶端響應結果,通常客戶端使用http協(xié)議請求
web 層烘嘱,web 需要接收 http 請求歼郭,完成 http 響應泰涂。
表現(xiàn)層包括展示層和控制層:控制層負責接收請求是牢,展示層負責結果的展示农曲。
表現(xiàn)層依賴業(yè)務層合呐,接收到客戶端請求一般會調用業(yè)務層進行業(yè)務處理翩伪,并將處理結果響應給客戶端侠仇。
表現(xiàn)層的設計一般都使用 MVC 模型。(MVC 是表現(xiàn)層的設計模型,和其他層沒有關系)
業(yè)務層:
也就是我們常說的 service 層谎砾。它負責業(yè)務邏輯處理忘晤,和我們開發(fā)項目的需求息息相關任连。web 層依賴業(yè)
務層矿酵,但是業(yè)務層不依賴 web 層倔矾。
業(yè)務層在業(yè)務處理時可能會依賴持久層壤巷,如果要對數(shù)據(jù)持久化需要保證事務一致性有巧。(也就是我們說的甜橱,
事務應該放到業(yè)務層來控制)
持久層:
也就是我們是常說的 dao 層譬胎。負責數(shù)據(jù)持久化,包括數(shù)據(jù)層即數(shù)據(jù)庫和數(shù)據(jù)訪問層崇猫,數(shù)據(jù)庫是對數(shù)據(jù)進
行持久化的載體汗洒,數(shù)據(jù)訪問層是業(yè)務層和持久層交互的接口浓恶,業(yè)務層需要通過數(shù)據(jù)訪問層將數(shù)據(jù)持久化到數(shù)據(jù)庫
中树肃。通俗的講,持久層就是和數(shù)據(jù)庫交互劣像,對數(shù)據(jù)庫表進行曾刪改查的屋群。
MVC
MVC 全名是 Model View Controller芍躏,是模型(model)-視圖(view)-控制器(controller)的縮寫柏肪,
是一種用于設計創(chuàng)建 Web 應用程序表現(xiàn)層的模式谬俄。MVC 中每個部分各司其職:
Model (模型) :
通常指的就是我們的數(shù)據(jù)模型。作用一般情況下用于封裝數(shù)據(jù)。
View (視圖) :
通常指的就是我們的 jsp 或者 html褒侧。作用一般就是展示數(shù)據(jù)的。
通常視圖是依據(jù)模型數(shù)據(jù)創(chuàng)建的谊迄。
Controller (控制器) :
是應用程序中處理用戶交互的部分闷供。作用一般就是處理程序邏輯的。
它相對于前兩個不是很好理解统诺,這里舉個例子:
例如:
我們要保存一個用戶的信息歪脏,該用戶信息中包含了姓名,性別粮呢,年齡等等婿失。
這時候表單輸入要求年齡必須是 1~100 之間的整數(shù)。姓名和性別不能為空啄寡。并且把數(shù)據(jù)填充
到模型之中豪硅。
此時除了 js 的校驗之外,服務器端也應該有數(shù)據(jù)準確性的校驗挺物,那么校驗就是控制器的該做
的懒浮。
當校驗失敗后,由控制器負責把錯誤頁面展示給使用者。
如果校驗成功砚著,也是控制器負責把數(shù)據(jù)填充到模型次伶,并且調用業(yè)務層實現(xiàn)完整的業(yè)務需求
SpringMVC
SpringMVC 是一種基于 Java 的實現(xiàn) MVC 設計模型的請求驅動類型的輕量級 Web 框架,屬于 SpringFrameWork 的后續(xù)產(chǎn)品稽穆,已經(jīng)融合在 Spring Web Flow 里面冠王。Spring 框架提供了構建 Web 應用程序的全功
能 MVC 模塊。使用 Spring 可插入的 MVC 架構舌镶,從而在使用 Spring 進行 WEB 開發(fā)時柱彻,可以選擇使用 Spring的 Spring MVC 框架或集成其他 MVC 開發(fā)框架,如 Struts1(現(xiàn)在一般不用)餐胀,Struts2 等绒疗。
SpringMVC 已經(jīng)成為目前最主流的 MVC 框架之一,并且隨著 Spring3.0 的發(fā)布骂澄,全面超越 Struts2吓蘑,成為最優(yōu)秀的 MVC 框架。
它通過一套注解坟冲,讓一個簡單的 Java 類成為處理請求的控制器磨镶,而無須實現(xiàn)任何接口。同時它還支持RESTful 編程風格的請求健提。
SpringMVC入門
</article>
2人點贊
"小禮物走一走琳猫,來簡書關注我"
贊賞支持 還沒有人贊賞,支持一下
[圖片上傳失敗...(image-6f359-1599612282048)]
總資產(chǎn)41 (約3.56元)共寫了39.9W字獲得409個贊共273個粉絲
已關注
<iframe id="iframeu6201831_0" name="iframeu6201831_0" src="https://pos.baidu.com/ycsm?conwid=728&conhei=90&rdid=6201831&dc=3&exps=110261,110252,110011&psi=92d2745eef7d2b314cfb5cdfa1a15592&di=u6201831&dri=0&dis=0&dai=1&ps=2615x174&enu=encoding&ant=0&dcb=__adblockplus&dtm=HTML_POST&dvi=0.0&dci=-1&dpt=none&tsr=0&tpr=1599612185049&ti=SpringMVC%20-%20%E7%AE%80%E4%B9%A6&ari=2&ver=0908&dbv=2&drs=3&pcs=1349x624&pss=1349x2861&cfv=0&cpl=3&chi=1&cce=true&cec=UTF-8&tlm=1599612185&prot=2&rw=624<u=https%3A%2F%2Fwww.reibang.com%2Fp%2F63ce84467f51<r=https%3A%2F%2Fwww.reibang.com%2Fu%2F1eb290f01417&ecd=1&uc=1366x728&pis=-1x-1&sr=1366x768&tcn=1599612185&qn=73fae80ede7e3af7&tt=1599612185046.8.8.8" width="728" height="90" align="center,center" vspace="0" hspace="0" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" style="border:0;vertical-align:bottom;margin:0;width:728px;height:90px" allowtransparency="true"></iframe>
<textarea class="_1u_H4i" placeholder="寫下你的評論..."></textarea>
全部評論0只看作者
按時間倒序
按時間正序
被以下專題收入私痹,發(fā)現(xiàn)更多相似內容
收入我的專題
廣告
[圖片上傳失敗...(image-b71a6d-1599612282048)]
已關注
總資產(chǎn)41 (約3.56元)
閱讀 1,208
閱讀 23
閱讀 53
推薦閱讀
數(shù)據(jù)交換管理—企業(yè)數(shù)據(jù)上鏈的起點
閱讀 39
閱讀 11
閱讀 19
閱讀 98
秒建一個后臺管理系統(tǒng)脐嫂?用這5個開源免費的Java項目就夠了
閱讀 439
<iframe id="iframeu6203499_0" name="iframeu6203499_0" src="https://pos.baidu.com/ycsm?conwid=260&conhei=210&rdid=6203499&dc=3&exps=110261,110252,110011&psi=92d2745eef7d2b314cfb5cdfa1a15592&di=u6203499&dri=0&dis=0&dai=2&ps=153x914&enu=encoding&ant=0&dcb=__adblockplus&dtm=HTML_POST&dvi=0.0&dci=-1&dpt=none&tsr=0&tpr=1599612185049&ti=SpringMVC%20-%20%E7%AE%80%E4%B9%A6&ari=2&ver=0908&dbv=2&drs=3&pcs=1349x624&pss=1349x2951&cfv=0&cpl=3&chi=1&cce=true&cec=UTF-8&tlm=1599612185&prot=2&rw=624<u=https%3A%2F%2Fwww.reibang.com%2Fp%2F63ce84467f51<r=https%3A%2F%2Fwww.reibang.com%2Fu%2F1eb290f01417&ecd=1&uc=1366x728&pis=-1x-1&sr=1366x768&tcn=1599612185&qn=12ced155572bb288&tt=1599612185046.14.14.14" width="260" height="210" align="center,center" vspace="0" hspace="0" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" style="border:0;vertical-align:bottom;margin:0;width:260px;height:210px" allowtransparency="true"></iframe>