MVC三層架構

1、MVC和三層架構css

  1. 什麼是MVC?

(1)     MVC的全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫,是一種軟件設計模式。html

(2)     Model:即模型。也就是JavaBean、domain、entity前端

  1. 封裝數據的模型:實體
  2. 在java web中,把數據封裝到一個實體類的對象中,傳遞對象
  3. domain:實體類。也叫entity

a)       把屬性設置爲私有的java

b)       添加get、set方法web

c)        必需要有默認的無參構造方法數據庫

d)       這個類必須是public公共的設計模式

(3)     View:即視圖。架構

  1. 也是就JSP、html、css、JavaScript代碼。實現數據的展現
  2. 位置在WebContent文件夾下

(4)     Controller:即控制器。也就是Servletdom

  1. 接受用戶請求,調用模型處理請求,選擇視圖(jsp)顯示相應結果
  2. 什麼是三層架構?

  3.  

(1)     表現層(UI):jsp

a)       主要是指與用戶交互的界面。用於接收用戶輸入的數據和顯示處理後用戶須要的數據。

b)       前端代碼:view。用戶和用戶、界面的顯示。jsp、js、html、css

代碼位置:WebContent

c)        後臺代碼:control。用戶控制跳轉、調用業務邏輯層。

Servlet、SpringMVC、Struts2。

a)       包名:xxx.controller或xxx.servlet

(2)     業務邏輯層(Service層或BLL)

  1. UI層和DAO層之間的橋樑。實現業務邏輯。業務邏輯具體包含:驗證、計算、業務規則等等
  2. 包名:xxx.service
  3. 接口名:IXXXService
  4. 實現類名:XXXServiceImpl

(3)     數據訪問層(Dao層)

  1. 與數據庫打交道。主要實現對數據的增、刪、改、查。將存儲在數據庫中的數據提交給業務層,同時將業務層處理的數據保存到數據庫
  2. 包名:xxx.dao
  3. 接口名:IXXXDao
  4. 實現類名:XXXDaoImpl

(4)     三層之間的關聯

 

 

 

  1. 生活中的三層架構
  2.  

     

     

服務員:只管接待客人;

廚師:只管作客人點的菜;

採購員:只管按客人點菜的要求採購食材;

 

他們各負其職,服務員不用瞭解廚師如何作菜,不用瞭解採購員如何採購食材;廚師不用知道服務員接待了哪位客人,不用知道採購員如何採購食材;一樣,採購員不用知道服務員接待了哪位客人,不用知道廚師如何作菜。

  1. 爲何要使用三層架構?

(1)     使用三層架構的目的:解耦!!!遵照的原則:高內聚、低耦合

(2)     一樣拿上面飯店的例子來說:

(3)     服務員(UI層)請假——另找服務員;廚師(BLL層)辭職——招聘另外一個廚師;採購員(DAL)辭職——招聘另外一個採購員;

顧客反映:

一、大家店服務態度很差——服務員的問題。開除服務員;

二、大家店菜裏有蟲子——廚師的問題。換廚師;

任何一層發生變化都不會影響到另一層!!!

  1. 三層架構的表現形式?

 

 

 

相關文章
相關標籤/搜索