Struts 比 Turbine 的結構簡單多了,換而言之,Struts 是一個非常純的 Web Framework,它也僅僅只是一個 Framework.Struts 的官方定義中說了其符合 MVC,我并不是非常認同.Struts 很好的完成了 VC(Visual & Control),但它并沒有提供相應的M(Module),或者說不明顯.Struts 最好的搭檔可能就是 EJB 了,因為 EJB 補充了它的 M.
而 Turbine 則不然,它的設計思路決定了它是一個 Web 應用的完全解決方案.Turbine 并不是十分符合 J2EE 標準.它有自己一整套解決方案,它是一個真正意義上的 MVC 模式框架.它具有大量的子項目來支持它的應用(子項目樹僅次于Jarkarta Commons 位居第二)
Turbine 要比 Struts 難理解,難學,但是掌握它是有意義的.如果你只是要寫一個 Web App 的話,Turbine 開發要比 Struts 快.
Turbine 支持 Velocity,WebMacro,Cocoon(XSLT) 等等,雖然它也支持JSP,不過它的最最親密的戰友任是 Velocity.
Struts 對于寫過 JSP 和 Servlet 的人來說可能會很輕切.Jakarta 項目組的相關項目 Taglibs 提供了大量的 Tag 以支持 Struts,使 Struts 的結構性和統一性變得很好,Struts 的另一個 Turbine 不如的地方是它的 mapping-forward 機制,在 Struts 中是用 struts-config.xml 文件來管理的,雖然隨著你的項目的擴大,這個xml文件會變得很大以至于難以維護(一般大的項目中會有專人管理這個文件),但是它的統一性和導航邏輯性比 Turbine 好的多,Turbine 把相應的邏輯以 Velcoity Template 類來控制.在相應的Velocity 頁面中也會用相關的導航.