MVC架構是隨著smalltalklanguage語言的發展提出的,它是一個聞名的用戶界面設計架構。經典的MVC架構把一個組件(可認為是整個應用程序的一個模塊)劃分成三部分組Mmodel治理這個模塊中所用到的數據和值,如某個數據的最大值最小值或者界面上滑動條所在的位置等數據。而Vview治理模塊如何顯示給用戶,Ccontroller決定如何處理用戶和該模塊交互式時候產生的事件如用戶點擊一個按鈕等。
隨著J2EE的規范不斷的完善,人們發覺用MVC架構來設計webapplication是相當適宜的。m的角色可以通過delegateclass來實現,servlet可以充當controller角色。jsp可以充當view的角色c
在VIEW的概念下一定要做到無一句JSP代碼我覺得這句話有失偏頗MVCV是view沒有限制如何訪問數據,我們甚至可以在jsp中直接訪問數據庫只要這個方式是為提供用戶界面顯示服務,雖然違反了三層模式但並沒違反mvc架構。
webapplication采用struts框架實現了mvc架構。頁面通過formbean和相應的action交互,action根據提交的內容從新歸納提交的數據然後再提交給實現業務邏輯的class。
但是由於formbean和既定taglib無法滿足復雜的頁面數據顯示的需要,我們仍然需要一些viewhelperclass來輔助viev端的功能。
設計一個項目我想還是先由三層模式著手,設計好相關的Integration層和business層方法類然後再考慮presentation如何和business層的類交互,這才是要害。
實際上在sun的j2eecorepattern中sturts只是presentation中frontcontroller的角色。
delegateclass指實現了businessdelegate模式的類具體看BusinessDelegate