1、Struts、Webwork、Struts2比較
在JAVA EE中作為MVC的優秀架構有很多,例如:常見的有:Struts、WebWork、Tapestry、JSF等,在這些優秀的架構之中,個人比較習慣使的還是:Struts和WebWork,對於JSF使的不多,雖然SUN公司主推JSF,但觀察其身邊的搞開發的朋友,使用此技術的確實是少之又少,Tapestry也是apache公司推出的,但個人認為是極其難使的,而且版本之間的差別較大,文檔也不是很多,使用較費勁,而對於Struts而言,相信不少人都清楚,畢竟Struts已經成功的成為了MVC架構的一個標準,如果不去搞Struts,那麼連入這個行業都很難。WebWork作為XWork的一個新的發展物,在JIVE論壇上取得了巨大的成功,拌著時間的發展,WebWork使用會越來越多,發展潛力較大。
1.1、Struts
Struts的推出時間,在網上查了查確實沒有查到,在我印象中應該是03年接觸到Struts概念的,一開始只是在使用簡單的MVC進行開發,Struts剛出現的時候確實比較麻煩,工具也很難找到,一下子就來了這麼多的JAR包,設定檔也很難寫,覺得這不像是個技術,不過慢慢的使使也就習慣了,但寫到最後發現在Struts裡編寫那個ActionForm真是費勁,一開始覺得這樣做確實有好處,但是慢慢的發現裡面的代碼要一下子寫好多,所以開始有些厭煩Struts了,但是Struts依然還是有很多好處的,例如:
• 在JSP頁面裡提供了豐富的標籤,可以直接輸出List中的內容,也可以通過<bean>標籤訪問裡面類裡的屬性
• 通過Struts的標籤前台的Scriptlet減少了很多,頁面看起來很舒服(不過在不會的人眼中,這樣的頁面簡直是一種折磨)
在Struts 1.2之中,Struts有了一些改變,其中我個人認為比較好用的就是加入了DispatcherAction的操作,這樣在一個Action上處理多種情況變的很簡單,使用者不用像最早那樣需要通過一個參數來判斷到底使用的那種操作了,在Struts 1.2之後我開始使用驗證架構了,但是沒用它做過什麼項目,驗證架構確實很大的提供了方便,但個人感覺其根本還是在補救Struts中的ActionForm,所以說ActionForm是Struts中天生的軟肋。
1.2、Webwork2
在Java中JIVE論壇的大名算是赫赫有名的,在JIVE論壇中就使用了WebWork技術,也正是因為WebWork在JIVE論壇中的應用,才使得Webwork架構被世人所注意。
在WebWork之中,沒有了Struts中的ActionForm,相反的提出了許多Interceptor的概念,增加了很多的攔截器,方便使用者對輸入資訊進行驗證,開發人員也沒有必要再去編寫各種煩人的驗證代碼了。
1.3、Struts2