中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MVC模式與三層架構是什么

發布時間:2023-03-21 17:56:19 來源:億速云 閱讀:147 作者:iii 欄目:開發技術

這篇文章主要介紹“MVC模式與三層架構是什么”,在日常操作中,相信很多人在MVC模式與三層架構是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”MVC模式與三層架構是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

MVC模式

MVC模式是一種分層開發的模式,其中:

  • M:Model,業務模型,處理業務

  • V:View,視圖,用于界面展示

  • C:Controller,控制器,處理請求,調用模型和視圖

MVC模式與三層架構是什么

其中,控制器(Servlet)用來接收瀏覽器發送的請求,控制器調用模型(JavaBean)來獲取數據,比如從從數據庫查詢數據,控制器獲取數據后在交給視圖(JSP)進行數據的展示。

使用 MVC 模式開發有很多的好處,例如,職責單一,互不影響,每個角色各司其職。有利于分工協作和組件重用等。

三層架構

三層架構的模型將我們的項目分成了三個層面,分別是表現層,業務邏輯層和數據訪問層。其中數據訪問層又稱持久層。

MVC模式與三層架構是什么

  • 數據訪問層:對數據庫進行增刪改查等基本操作。

  • 業務邏輯層:對業務邏輯進行封裝,組合數據訪問層中的基本功能,形成復雜的業務邏輯功能,例如注冊業務功能,我們先調用數據訪問層的 selectByName() 方法判斷該用戶名是否存在,如果不存在再調用數據訪問層的 insert() 方法進行數據的添加操作。

  • 表現層:接收請求,封裝數據,調用業務邏輯層,響應數據。

在整個流程中,瀏覽器發送請求,表現層的 Servlet 接收請求并調用業務邏輯層的方法進行業務邏輯處理,而業務邏輯層方法調用數據訪問層方法進行數據的CRUD 操作,依次返回給 Servlet,然后 Servlet 將數據交給 JSP 進行展示。

三層架構的每一層都有特有的包名名稱,以后我們在學習中就要使用更加規范的命名方式,他們分別是:

  • 表現層:org.chengzi.web 或者 org.chengzi.controller

  • 業務邏輯層:org.chengzi.service

  • 數據訪問層:org.chengzi.mapper或者org.chengzi.dao

馬上就要學習完 JavaWeb 了,后面我們會學習更多的框架,Spring,SpringMVC,MyBatis 等等,其實不同的框架是對不同層進行的封裝,如圖:

MVC模式與三層架構是什么

MVC和三層架構

我們已經說完了 MVC 模式和三層架構,下面來看看兩者有什么關系呢?

MVC模式與三層架構是什么

如圖,上半部分是 MVC 模式,后半部分是三層架構,其中,MVC 模式中的控制器和視圖就是三層架構中的表現層,而 MVC 模式中的模型就是三層架構中的業務邏輯層和數據訪問層。

IDEA 小技巧

解決 Ctrl+Alt+V 快捷鍵 自動補全代碼失敗的問題,如圖:

MVC模式與三層架構是什么

原因:未添加 main() 方法

解決:在類中添加main() 方法,如果是在Servlet中,則添加toGet() 等方法。

如果將 MVC 理解為一個大的概念,那么三層結構就是對 MVC 模式實現架構的思想,根據標準,我們將不同層的代碼放在不同的包下,每一層里面職責單一,將來如果表現層的技術更新迭代,而業務邏輯層和數據訪問層的代碼則不用發生變化,大大提高的代碼的可維護性。

到此,關于“MVC模式與三層架構是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

mvc
AI

长春市| 常德市| 绥阳县| 大同市| 高阳县| 大渡口区| 元氏县| 武邑县| 普安县| 禹州市| 乌兰察布市| 麦盖提县| 新郑市| 叙永县| 赤峰市| 青州市| 赫章县| 巴中市| 涿鹿县| 曲沃县| 游戏| 通河县| 霞浦县| 沾化县| 淅川县| 冷水江市| 全州县| 香格里拉县| 青河县| 静宁县| 潞西市| 黔西县| 兖州市| 大余县| 广灵县| 广南县| 东山县| 平罗县| 固始县| 阿勒泰市| 衡东县|