不想過多的爭論struts與webwork的優越性,只是自己做了一個小試驗。在做試驗之前已經用struts做過兩個項目了,webwork還是初級學習。
1.使用標簽。struts的自定義標簽多,學習起來復雜,但同時功能強大。webwork只定義了一個webwork.tld,操作更簡單。
2.有效性驗證和javascript支持。struts支持客戶端JavaScript與服務器端的校驗。webwork的客戶端校驗,欠美觀。具說支持javascript但是因為初學,沒有試過。
3.struts和webwork都支持velocity.struts的支持是使用velocity tools,webwork則直接將velocity嵌入。比較起來webwork顯示更加靈活,配置簡單一些。
4.插件的支持。struts作為比較成熟的產品,擁有titles、validator插件,也可自己編寫自己的插件,通過struts配置文件加載。webwork實現插件是通過定制component.xml實現。
5.顯示方面。struts因為支持titles,布局更加靈活。webwork與velocity切換容易也可以定制不同的顯示模板,但是定制過程繁瑣一些。
6.hibernate的支持程度。struts通過過濾器和插件實現。webwork有專門的插件:org.hibernate.admin.component.HibernateSessionFactory和org.hibernate.admin.component.HibernateSession
7.模塊化開發。struts支持模塊化開發,支持switchAction.webwork暫時不知是否支持團隊開發,支持action復用。通過定義方法。
8.顯示定義formbean.struts需要顯示定義 formbean或通過配置文件定義動態屬性。webwork不需要定義formbean或相關屬性,直接通過攔截器捕獲屬性。
9.資料獲取。struts開源項目,支持者眾多,Apache項目文檔比較全。webwork相關文檔和學習資料較少。
轉自:http://www.javaeye.com/topic/6947