MVC模式與Struts2框架
1.模式、架構和框架的定義
(1).模式:也稱為設計模式,是用來解決特定問題的一般性方法。
程式中的設計模式就是用來告訴使用者針對特定問題如何組織類、物件和介面之間的關係。
如MVC模式。
(2).架構:可以從巨集觀的層面上確定如何解決問題,系統的架構分為軟體架構和硬體架構。
在這裡主要描述軟體架構。
軟體架構:是一系列相關的抽象模式,用於指導大型軟體系統各個方面的設計。 軟體架構是
一個系統的草圖。軟體架構描述的物件是直接構成系統的抽象元件。各個元件之間的連線則
明確和相對細緻地描述元件之間的通訊。
(3).框架:框架是整個或部分系統的可重用設計,表現為一組抽象構件及構件例項間互動的
方法;另一種定義認為,框架是可被應用開發者定製的應用骨架。前者是從應用方面而後者
是從目的方面給出的定義。
如Struts2框架,Hibernate框架等。
2.模式和框架的區別
設計模式研究的是一個設計問題的解決方法,一個設計模式可以用於不同的框架和被不同的
語言所實現,而框架則是一個應用的體系結構,是一種或多種設計模式和程式碼的混合體。
3.架構和框架的區別
架構確定了系統的整體結構、層次劃分、不同部分之間的協作等設計考慮,而框架比架構更具體,
更偏向於技術。
4.MVC模式
MVC是一個設計模式,它強制性的使應用程式輸入、處理和輸出分開。由模型、檢視、控制器三個
核心部分組成。即model、view、controller。分別對應這MVC三個字母。如圖
(1).模型
模型用來表示企業資料和業務規範,一個模型可以為多個檢視提供資料。
(2).檢視
檢視是使用者看到並與之互動的介面。
(3).控制器
控制器接受使用者的輸入並呼叫模型和檢視去完成使用者的需求。
(4).優點
①.低耦合性,改變其中一個不會影響其他兩個
②.高重用性和可適用性
③.較低的生命週期成本
④.快速的部署
⑤.可維護性
(5).缺點
MVC的缺點是它沒明確的定義,完全理解不是很容易。同時給除錯帶來了一定的困難。
5.Struts2框架
Struts2是一個基於MVC設計模式的Web應用框架,它本質上相當於一個servlet,
在MVC設計模式中,Struts2作為控制器(Controller)來建立模型與檢視的資料互動。
Struts 2以WebWork為核心,採用攔截器的機制來處理使用者的請求,這樣的設計也使得業務
邏輯控制器能夠與ServletAPI完全脫離開,所以Struts 2可以理解為WebWork的更新產品。
工作流程如下