David Geary (何許人也?Core JSF的作者之一)有一篇BLog,建議新項目都最好采用JSF而不是Struts,并且列出了10大理由,分別是:
Components
組件組件,JAVA一直希望有.NET和Delphi的RAD和拖放式開發(fā),雖然現(xiàn)在和那兩種還有差距,但畢竟已經(jīng)是開始了。第3方組件廠商也開始出現(xiàn)萌芽的態(tài)勢。另外一個值得注意的趨勢就是,Apple,這個藝術與技術的完美締造者,其WebObject,作為Web的組建式框架的祖宗,也準備開放了。而且,按照Apple也轉(zhuǎn)向Intel平臺的介紹來看,也許不久的一天,它就可以完美地運行在WinTel架構(gòu)下了。
Render Kits
支持渲染包可以是一個非常重要的特征,這樣可以支持不同的顯示技術。移植性很好。針對XML, PDF, VML等等。不需要改動其它的東西。
Renderers
Value Binding Expressions
其實比較特色的是Method Binding,這點在其他EL或者類似的技術上還沒有。
Event Model
Extensibility
Managed Beans (Dependency Injection)
只有Spring 才IoC嗎?不是的,其實現(xiàn)在IoC無處不在。
POJO Action Methods
JSF is the standard Java-based web app framework
There's only one Struts
Struts是一個產(chǎn)品,而JSF是一個標準。二者層面不一樣。有很多優(yōu)秀的實現(xiàn)會出現(xiàn)的。
甚以為是,故摘錄于此。原文見:http://jroller.com/page/dgeary?entry=top_ten_reasons_to_prefer
其實,JSF的學習曲線非常之低,呵呵。