首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 程式設計入門

Struts 入門教學(一):MVC 架構與 Struts 核心元件對應

     編輯:Java 程式設計入門

1. 介紹

1.1 Model-View-Controller (MVC) 設計模式

MVC 模式將應用程式劃分為三大核心角色:

  • Model(模型):封裝業務資料與邏輯,獨立於呈現層
  • View(視圖):負責資料呈現與使用者互動介面
  • Controller(控制器):接收請求、協調 Model 與 View、決定流程走向

此模式促進關注點分離,提升可維護性與可測試性。(詳細介紹可參考《設計模式》專書)

1.2 MVC 概念映射至 Struts 元件

Struts 架構實作 MVC 概念,將其映射至 Web 應用程式組件:

MVC 角色Struts 對應元件
Model系統狀態 JavaBeans、商業邏輯 Beans、Entity EJBs
ViewJSP 頁面、自訂標籤庫、Struts 內建標籤庫
ControllerActionServlet、ActionMapping、Action 類別

1.3 Model:系統狀態與商業邏輯 JavaBeans

Model 可細分為「內部狀態」與「改變狀態的行為」:

  • 狀態資訊:以一組 JavaBeans 表示,屬性描述狀態細節。Beans 可為自包含(自行持久化)或門面模式(委派外部資料源如資料庫)。Entity EJBs 常用於表示內部狀態。
  • 商業邏輯行為:大型應用常以可被狀態 Beans 呼叫的方法表示。例:Session 中的購物車 Bean 擁有 checkOut() 方法處理信用卡驗證、下單出貨。也可用 Session EJBs 實作。小型應用可將簡單邏輯置於 Action 類別,但建議分離「做什麼」(商業邏輯)與「決定做什麼」(Controller)。

1.4 View:JSP 頁面與呈現元件

  • 以 JSP 技術構建,包含靜態 HTML/XML 模板文字與動態內容(透過標準動作標籤如 <jsp:useBean> 解譯)
  • Struts 提供豐富自訂標籤庫,便於建立國際化使用者介面,與 ActionForm Beans 緊密配合
  • 商業物件常需依當前狀態渲染 HTML/XML,輸出可用 <jsp:include> 包含於 JSP 結果中

1.5 Controller:ActionServlet 與 ActionMapping

  • 核心為 ActionServlet,透過 ActionMapping 設定請求 URI 路徑對應至具體 Action 類別(實作 Action 介面)
  • Action 執行商業邏輯後,將控制權轉交適當 View 元件產生回應
  • ActionMapping 支援擴充屬性,保存應用專屬資訊
  • 支援邏輯名稱轉向:Action 可請求「主選單」邏輯名,無需知悉實際 JSP 檔名,達到控制邏輯與呈現邏輯解耦

(未完待續)

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved