Java Web開發(fā)之MVC設(shè)計模式簡介
時間:2023-05-23 19:00:01 | 來源:網(wǎng)站運營
時間:2023-05-23 19:00:01 來源:網(wǎng)站運營
Java Web開發(fā)之MVC設(shè)計模式簡介:設(shè)計模式是一套被反復(fù)使用、成功的代碼設(shè)計經(jīng)驗的總結(jié)。模式必須是典型問題(不是個別問題)的解決方案。在程序設(shè)計中,把采用模型(Model)、視圖(View)、視圖(Controller)的設(shè)計方式稱為MVC設(shè)計模式。
一、首先,給大家簡述一下MVC設(shè)計模式的組成:
(1) M(Model) 模型:處理業(yè)務(wù)邏輯,對應(yīng)組件是JavaBean(Java類);
(2) V(View)視圖層:顯示查詢結(jié)果、收集用戶數(shù)據(jù),對應(yīng)組件是jsp或html文件;
(3) C(Controller)控制器層:接收 view 請求并將請求轉(zhuǎn)交給對應(yīng)的 Model 并向客戶端作出相應(yīng),對應(yīng)組件是Servlet;
(4) 作用:實現(xiàn)了代碼的分離,降低耦合度。
模型可以分為業(yè)務(wù)邏輯和數(shù)據(jù)模型,它們代表應(yīng)用程序的業(yè)務(wù)邏輯和狀態(tài)。
視圖提供了可交互的客戶界面,向客戶顯示模型數(shù)據(jù)。
控制器響應(yīng)客戶的請求,根據(jù)客戶的請求來操作模型,并且把模型的響應(yīng)結(jié)果由視圖展示給客戶。
MVC模式
二、MVC設(shè)計模型的優(yōu)點和好處
(1)、各司其職、互不干涉
在MVC模式中,3個層各司其職,所以如果哪一層的需求發(fā)生了變化,就只需要更改相應(yīng)層中的代碼,而不會影響到其他層。
(2)、有利于在開發(fā)中的分工
在MVC模式中,由于按層把系統(tǒng)分開,那么就能更好地實現(xiàn)開發(fā)中的分工。網(wǎng)頁設(shè)計人員可以開發(fā)JSP頁面,對于業(yè)務(wù)熟悉的開發(fā)人員可以開發(fā)模型中相關(guān)業(yè)務(wù)處理的方法,而其他開發(fā)人員可開發(fā)控制器,以進行程序控制。
(3)、有利于組件的重用
分層更有利于組件的重用,如控制層可獨立成一個通用的組件,視圖層也可做成通用的操作界面。
MVC最重要的特點是把顯示與數(shù)據(jù)分離,這樣就增加了各個模塊的可重用性。
三、MVC編程模式
由Servlet接收客戶端請求,調(diào)用相應(yīng)的模型處理業(yè)務(wù)邏輯和數(shù)據(jù),再由Servlet根據(jù)處理的結(jié)果,選擇相應(yīng)的JSP或HTML文件響應(yīng)客戶端。