※ 引述《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
討論串 (同標題文章)