top
Loading...
用Struts開發基于MVC的Web應用
天極IT資訊短信服務 電腦小技巧
資費:包月5元
手機:
介紹:細處著手,巧處用功。高手和菜鳥之間的差別就是:高手什么都知道,菜鳥知道一些。電腦小技巧收集最新奇招高招,讓你輕松踏上高手之路。


MVC介紹

MVC模式是一種非常理想化的設計模式,應用MVC模式完成兩個以上項目的人都有同樣的體會,他們已經對以前的工作方法進行了徹底的改造。工作模式的改變要付出痛苦的代價,但現在你有現成的技術架構可以采用,避免在項目中自己開發、摸索。它就是開源Apache Struts framework,它提供了實現MVC設計模式最好的實現工具。

在本文中,我們將簡單了解、體會一下模型-視圖-控制器(MVC)設計模式,特別地,我們來看看如何用Struts架構來完美地實現MVC模式。我們先從理論上簡單地描述MVC模式,然后用我們一個簡單的例子來實現我們自己的MVC架構。在對MVC模式有了了解后,我們用Struts來看這個新技術是如何幫助我們迅速、簡單地創建基于MVC的Web應用。

模型-視圖-控制器(Model-View-Controller)模式

MVC模式最早是在Smalltalk(一種面向對象的語言)這種程序語言設計中被提出來的。我們暫時先忽略它的歷史,集中注意力在關注它怎樣被應用在Web應用開發中。

當Java的Servlets技術最開始出現的時候,程序員們立刻意識到這是一項極其有用的技術。與同時代的CGI Web開發技術相比,Servlets更快,更靈活,更可靠,更強大。然而,開發基于Servlets技術的Web應用有一個巨大的缺陷--需要使用例如out.println之類的語句來輸出瀏覽器識別的HTML。頻繁使用這個方法是個錯誤的傾向,開發極其浪費時間(程序員需要經常退出所有應用程序進行重新編譯)。并且這也使修改Web頁面的工作也變得很困難,因為Web的表現和邏輯在一堆令人恐懼的代碼中摻乎在一起。

于是作為解決方法的JavaServer Pages(JSP)出現了,它們將Servlets變成它們運行的結果。應用JSP技術,我們將業務邏輯用一系列夾雜在HTML中的<%>標識來表達。以開發JSP為核心的應用盡管比以Servlet為核心的應用有進步,但看起來仍然是雜亂無章的,仍然需要用額外的代碼來控制應用頁面的流轉。在充滿格式化代碼的JSP頁面上,沒有地方來增加這樣額外的控制代碼。顯然需要尋找別的出路。

不久人們認識到同時應用JSP和Servlets兩種技術開發Web應用是一種不錯的選擇。畢竟,Servlets擅長處理業務邏輯的編程,處理請求,控制功能頁面的流轉,而JSP則是格式化請求處理結果,通過瀏覽器獲得用戶輸入。這種工作機制后來變成了人們長說的Model2(用JSP或Servlets中單獨的一種實現web應用被稱做Model 1).

Model 2不是一項革命性的新模式,其實它是來自于Smalltalk語言研發過程中出現的MVC模式。大多數情況下,Java程序員趨向于可完全互換地使用這兩個名詞。
作者:http://www.zhujiangroad.com
來源:http://www.zhujiangroad.com
北斗有巢氏 有巢氏北斗