Struts2是流行和成熟的基於MVC設計模式的Web應用程序框架。 Struts2不僅是Struts1下一個版本,它是一個徹底重寫的Struts架構。html
WebWork框架開始以Struts框架爲基礎,其目標是提供一個增強和改進框架Struts來使web開發的開發人員更容易。web
一段時間後,WebWork框架和Struts社區聯手打造的著名的Struts2框架。設計模式
這裏有一些強大的功能,可能會迫使你考慮Struts2:網絡
POJO表單和POJO動做 - Struts2的Struts框架已經擺脫了動做表單組成部分, Struts2可使用任何POJO接收的形式輸入。一樣如今能夠看到任何POJO做爲一個Action類。架構
標籤支持 - Struts2中,提升了表單標籤和新標籤容許開發人員編寫更少的代碼。框架
AJAX 支持- Struts2中已確認由Web2.0技術接管,並整合到產品中,經過建立AJAX標籤,功能很是類似的標準Struts2 標籤AJAX支持。工具
易於整合 - Struts2 集成各類整合與其餘框架如Spring,Tiles 和SiteMesh是如今更容易。性能
模板支持 - 支持生成使用模板。學習
插件支持 - 能夠提升核心Struts2的特性,並加強使用插件。大量的插件可供Struts2。spa
性能分析 - Struts2的分析,調試和分析應用程序提供了集成。除此以外,Struts還提供了集成的內置調試工具調試。
易於修改標籤 - Struts2的標籤標註,能夠調整使用Freemarker的模板。這並不須要JSP或Java知識。基本HTML,XML和CSS知識是足夠修改標籤。
提倡少配置 - Struts2 促進較少的配置的幫助下,使用默認的各類設置值。沒必要配置的東西,除非它不符Struts2的默認設置。
視圖技術: - Struts2中有一個很大的支持多個視圖選項 (JSP, Freemarker, Velocity 和 XSLT)
以上只是Struts2的十大功能,這使得它是企業公司級應用框架。
雖然Struts 2 的配備了一個偉大的功能列表,但我不會忘記說起關於Struts2一些缺點,將須要大量的改進措施:
更大的學習曲線 - 要使用MVC與Struts,你必須是習慣使用標準的JSP,Servlet API和大量精心設計的框架。
欠佳的文檔 - Struts有標準的servlet和JSP API的相比,更少的在線資源,許多用戶第一時間發現網上Apache文檔混亂和管理不善的組織。
較少透明度 - Struts應用程序中,有不少幕後比正常的基於Java的Web應用程序,這使得它很難理解的框架。
最後一點,一個好的框架應該提供通用的特性,許多不一樣類型的應用程序,能夠利用它。 Struts 2是一個最好的網絡架構和高度被用於開發富Internet應用程序(RIA)。
系列文章: