Struts 框架使用 Model-View-Controller (MVC) 設計原型,解決了許多始用 Java servlets 以及 JavaServerPage 建立高效能之商業邏輯導向網路應用程式時,所會遇到的問題。Struts 提供了建立以 MVC 為基礎之應用程式的框架 (framework),同時也提供了函式庫以及公用函式,讓你可以更快速地進行 MVC 程式的開發。
Model Component 模型元件:為應用程式提供資料與服務之間的介面,其只需負責資料存取以及處理模型元件間互動之商業邏輯,其型式可從簡單的 Java bean 至複雜的 Enterprise JavaBeans (EJB) 或是 Web Service。
View Component 視圖元件:被使用來產生給瀏覽器的回應資料,故其提供了用戶所看見的東西,其型式可為 JSP 頁面或是 HTML 頁面。
Controller Component 控制器元件:為 MVC 架構的核心,通常是一個 servlet,負責接收應用程式的需求並處理模型層級以及視圖層級間資料的流程,通常會使用輔助類別來處理特定的需求或程序。
Struts 是由 craig R. McClanahan 創始,並在西元兩千年時,捐贈給了 Apache Software Foundation (ASF) 之 Jakarta 專案。在西元2001年6月 Struts 1.0 版正式問市,並成為程式碼公開之軟體。
Struts 的基本元件
1. 基本框架 Base Framework
提供了 MVC 架構的主要功能,且定義了建構應用程式所需的主要部份。
ActionServlet 類別:使用 Action 類別處理特定的需求。
Action 類別
ActionForm 類別:用來自 HTML 表格中抓取資料,並將資料傳回視圖層級進行頁面產生之動作。
2. JSP
標籤函式庫 Tag Libraries
讓 JSP 頁面做者得以使用非常相似於 HTML 的標籤,將 Java 類別所定義的功能展現在頁面上。
HTML 用以生成與 StrutsAPI 互動的 HTML 表格。
Bean 用以在 JSP 頁面中與 Java Bean 互動。
Logic 用以在 JSP 頁面忠實作簡單的條件式邏輯。
Nested 提供使用巢狀式的 HTML、Bean 及 Logic 標籤。
3. 可嵌入的
Tiles 框架
Tiles 子框架是一個相當豐富的樣板 (template) 框架,目的在於重複利用視圖層級 (Presentation HTML) 的程式碼。
4. 可嵌入的
Validator 框架
Validator 子框架其可同時在伺服器端及客戶端 (Browser) 進行資料的稽核,每一項檢查稽核的動作都被設定在一個外部的 XML
檔案中,是以宣告的方式而不是寫死在應用程式中。
取得 Struts 框架
可免費自 Apache Jakarta 網站 (http://struts.apache.org/) 下載。
Struts 下載的二進位檔 (Binary) 主要是由 Struts 應用程式撰寫介面的函式庫 (API) 及其相關檔案所組成,如 XML 設定檔案的文件格式定義檔 (Document Type Definitions;DTD) 以及 JSP 標籤函式庫的描述檔案 (LTD)。
此外還附帶幾個網路應用程式範例:struts-blank.war (其提供了基本模型且包含所有必須的 .jar 檔案等)、struts-example.war。
留言列表