天天看點

robbin點評Java full-stack架構

robbin點評Java full-stack架構

[url=http://robbin.javaeye.com/blog/24162]robbin點評Java full-stack架構[/url]                  

                      [b]關鍵字:[/b] 企業應用          full-stack              

                       2005年ruby on rails橫空出世般的流行刺激了Java開源架構整合的大趨勢,ruby onrails這個号稱“full-stack”的架構能做的我們都能做,它就是整合的更好,省略了配置檔案,提供了快速代碼生成器,暫且不論rubyonrails本身,但是諸多Java開發人員把目光從隻做好一件事情上面挪到了“提供最友善的full-stack架構”上面,是以我們可以看到整個Java開源社群雨後春筍般的出現了一批又一批的full-stack架構,Java社群的開源軟體哲學已經修改為:“要做最友善好用的full-stack架構”,那麼就讓我們來一一細數這些full-stack架構吧:

一、RIFE

最老牌的Java full-stack架構,作者Geert Bevin頗為不屑ruby on rails,和ruby onrails作者DHH有過對罵的戰鬥經驗,8月份RIFE釋出了1.5版本,提供了更多更友善的功能和更加簡化的開發。RIFE功能相當完善,在Continuations方面頗有獨到之處,但是RIFE獨辟蹊徑,整個解決方案不與現有任何流行開源架構相同,采用RIFE需要一些勇氣。

二、Grails

最像ruby on rails的Java full-stack架構,Grails即Groovy onrails的意思,采用Java動态腳本語言groovy來寫程式,底層實作采用Hibernate/Spring/SpringMVC/JSTL,即groovy的腳本語言在運作期動态生成Hibernate/Spring的Java編譯好的位元組碼。8月份Grails釋出了最新的0.2.1版本,在可用性的道路上又向前進了一步。

三、JBoss Seam

最正宗的Java full-stack架構。JBossSeam整合了EJB3,Hibernate3,JSF,JBPM等架構,主持大局者是Hibernate作者GavinKing,Seam提供了一個非常簡化的完整架構。說Seam最正宗是因為Seam采用的EJB3,JSF等技術都是JavaEE5規範的官方技術,可謂系出名門。

四、Trails

最強調領域模型驅動的Javafull-stack架構。Trails是Hibernate,Spring和Tapestry架構的整合版本,鑒于Tapestry是一個元件驅動的Web架構。Trails非常強調以領域模型來驅動快速開發。這是一個值得Tapestry愛好者使用的Java full-stack架構。

五、Able

最不甘寂寞的Javafull-stack架構。這是8月份剛剛發表的新架構,Able的作者是前Webwork,現Struts2.0的主開發人員PatrickLightbody。Pat同學也是一個對ruby on rails頗為不屑的人,曾經和RIFE作者GeertBevin一唱一和的對戰過DHH。Pat一邊忙于開發Struts2.0,一邊不甘寂寞的推出了Able架構,這是一個整合了Webwork,Spring和iBATIS的架構,但是對Webwork進行了大幅度簡化。

這些成型的full-stack架構,加上最經典的Javafull-stack架構……Hibernate/Spring/Struts組合(或者Hibernate/Spring/Webwork組合),一夜之間,Java開源世界的full-stack架構如千樹萬樹梨花開,讓我們這些Java開發人員挑花了眼,有人說,選擇太多,即是Java開發人員之福,也是Java開發人員之痛,如何挑選适合自己需要的架構,則成為Java開發人員必備的能力之一。