Struts最早于2002年5月作為Jakarta項目的組成部分問世,Jakata項目由Apache Foundation.運做。項目的創立者希望該項目的研究改進和提高java Server Pages (JSPs)、servlet、標簽庫以及面向對象的技術水準。Struts為使用MVC體系來編寫應用提供了一個架構。Struts使用“ActionMapping”,它答應servlet將用戶的請求轉變為應用行為。ActionMapping通常指定一個請求的路徑、在請求上進行動作的對象類型,以及指定其它需要的屬性。
Struts的要害是控制器四周的活動。Struts控制器servlet映射事件到類(一個事件通常是一個HTTP POST, GET,或者類似的請求)。ActionServlet是MVC設計模型的司令部,也是StrUCts架構的核心。ActionServlet創建和使用Action,一個ActionForm和ActionForward。struts-config.xml是用來設置Action的。在創建Web應用期間,采用擴展Action和ActionForm來解決如何響應用戶請求的問題。struts-config.xml則是告訴ActionServlet如何使用擴展類。也可擴展ActionServlet以令Structs應用帶有一些自定義的特性。