Re: 到底該不該學Struts?

看板java作者時間19年前 (2006/08/23 02:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/3 (看更多)
※ 引述《doclet@kkcity.com.tw ( )》之銘言: > 我覺得Struts是一個開發web 好用的框架 > 也是最多人用的 > 但是最近一直有很多對手出現 > 加上open的東西可能新舊版本有相容性問題... > 不知道大家覺得該不該學Struts > 或是用Struts開發專案 有沒有什麼要注意的@@ > 感謝~ > ꔊ 這位施主,您的問題讓我想起來曾在課中裡讀過的一篇文章 http://210.60.194.100/life2000/professer/lifeEthics/LE04.htm 對於web framework好不好用,要看學習者本身入門的觀點。 以java來說web application有他的基礎必學。 而您竟然問到了structs,那表示基本的Model 1設計方式已經不能滿足您。 所以,進而想要在思想層面上有所進展。所以,選用一套web framework 是一個不錯的選擇。這些web framework大多是提供Model 2的構架( 內涵約為MVC design pattern),所以都是以一個servlet總管所有的request ===================================================== 廣告分隔線 == Model 1, Model 2 http://www.javaworld.com.tw/jute/post/view?bid=11&id=2567&sty=2 Model 2 http://www.javaworld.com/javaworld/jw-12-1999/jw-12-ssj-jspmvc.html ===================================================== 廣告分隔線 == 你用java server face會有FacesServlet 你用struts會有ActionServlet 你用spring mvc會有DispatcherServlet 你用tapestry會有ApplicationServlet 你用Wicket會有WicketServlet 你用foo會有fooServlet ... blah blah blah 呵! 發現了Model 2的特色了吧。 "每個framework,心中都有一個任意門(servlet)" request --> 任意門(servlet/Controller) --> *(商業邏輯/Model) --> View ^ | +------------<----------------<---------------------<-----------+ 所以,和您之前未曾使用Model 2時,你將遇到第一個難題: 怎麼搞定任意門。 通常和wex.xml有關,這是在學習大部分的web framework會先遇到的一個門檻, 為了跨過這個門除了依手冊上的說明設定好,寫個hello world之外。 建議您自己動手寫寫幾個servlet來玩玩,會更有sense ===================================================== 廣告分隔線 == hello servlet 新手練習篇 http://0rz.net/221Kf ===================================================== 廣告分隔線 == 再來要面對的是給Controller讀的設定檔,通常也是xml。這裡就充滿了各家 設計的哲學了。在Spring Web Flow你會看到很多的state,Struts你會有很多 form-bean,這裡就是特別需要去了解的地方。你心中要有一個念頭,這樣問 自己,他的request是怎麼送到controller的呢? 您也許寫了POJO來放表單, 也許他部分的傳值不是用java bean,傳值後提供了什麼驗證的機制,為了完 成這個驗證的功能,使用者需要付出多少的努力呢? 再來針對view所提供的taglib,是否覺得實用。例如spring mvc針對表單就 提供了一組taglib,當使用者填錯值的時候可以利用它顯示適合的修正提示。 這種功能當然很多framework都有提供,但是用起來是否順手又因人而已。 像有的人就不喜歡scriplet,也不想用taglib。有這樣的web framework能滿 足你的需求嗎? 其中一種是tapestry,直皆把必要的code塞在html的屬性中。 與web framework配合樣版引擎是完成不同的感覺。 而也有人考慮地更廣泛,希望使用的framework要與現有的工具有良好的整合 。spring似乎就是主打這項--整合力。 當然,還要考慮的是開發時的效率。你就該問問自己這玩意和我常用的ide 契合乎? 千言萬語,聽聽別人的口碑也要自我親身體驗。 你可以自己試試幾個framework,列幾項自己去評比 for example: framework form-check ide taglib/view 公司的意向 A B C D E ====================================================================== 等級權重 2 3 1 4 ====================================================================== 總分 -- ※ Origin: SayYA 資訊站 <bbs.sayya.org> ◆ From: 163.26.34.20
文章代碼(AID): #14wqPi00 (java)
文章代碼(AID): #14wqPi00 (java)