在學習SSH過程中總是會遇到這樣的問題:MVC和三層架構是不是一個概念?肯定的說,他兩就不是一個概念。所以就總結了一下自己的看法。可能會有理解錯誤的地方,希望可以交流交流。
二者混淆的原因
二者都是表現出了“三層”結構的思想,對於初學者而言,容易理解錯。二者在項目的構建過程中都會使用到。
二者的使用都是爲了實現低耦合高內聚的目標。
二者概念不同
二者劃分層次不同
三層架構將項目劃分爲表現層、業務邏輯層、數據訪問層三層。
MVC即爲模型(Model)、視圖(View)、控制器(Controller)。
同樣是三層結構但是他們的對應關係並不是一一對應的,他們的關係應該是:控制器和視圖構成表現層,而模型又劃分爲業務邏輯層和數據訪問層。比如Struts就在SSH框架中擔當了表現層的角色,它負責調用業務邏輯和視圖的跳轉和渲染。