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

Struts 框架實現 MVC 模式的原理分析與預算管理系統實戰應用

     編輯:Java 程式設計入門

MVC 設計模式回顧

MVC(Model-View-Controller)起源於 Smalltalk-80,現為 Sun 推薦的 J2EE 設計模式。三大核心職責:

  • Model:業務邏輯與規則核心,透過 JavaBean/EJB 存取資料庫,支援多視圖復用
  • View:純粹呈現層,無業務處理,僅輸出資料與接收使用者操作
  • Controller:接收請求、協調 Model 與 View、決定流程導向

處理流程:Controller 接收請求 → 呼叫 Model 處理 → 選擇 View 回應。

Struts 框架架構剖析

MVC模式框架

Struts框架圖

Controller 層

  • 核心:ActionServlet(單一入口 Servlet)
  • 映射:ActionMapping 對應請求路徑至具體 Action 處理器
  • 配置:struts-config.xml 定義所有映射關係

Model 層

  • Action:開發者繼承 org.apache.struts.action.Action,封裝具體處理邏輯,呼叫業務 Bean
  • ActionForm:表單資料封裝,屬性對應 HTML 表單欄位,支援驗證與重置

View 層

  • JSP + Struts 四大標籤庫(html、bean、logic、template)
  • 零 Scriptlet 原則:頁面僅負責資料傳遞與顯示,業務邏輯完全下沉
  • 標籤庫實現 Form Bean 雙向綁定,簡化資料封裝

實戰案例:全面預算管理系統 - 預算資料模組

功能範圍

資料錄入、查詢、修改、刪除四大核心功能。

視圖層實現範例(資料錄入頁)

<%@ page contentType="text/html; charset=GBK" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<html:form action="/information/budgetinfoadd" enctype="multipart/form-data">
  <html:select property="infoType" styleClass="input2">
    <html:options collection="TypeList" property="id" labelProperty="typeName"/>
  </html:select>
</html:form>

關鍵點:action 指向 Action 路徑,<html:form> 自動封裝表單資料至對應 ActionForm。

模型層:BudgetInfoAddForm 範例

public final class BudgetInfoAddForm extends ActionForm {
    private String infoType, title, content;
    private FormFile infoFile;
    // getter/setter 略
    public void reset(ActionMapping mapping, HttpServletRequest request) {
        title = content = null; infoFile = null;
    }
}

控制器層:四大 Action

  • BudgetInfoAddAction - 錄入
  • BudgetInfoContentAction - 查詢
  • BudgetInfoUpdateAction - 修改
  • BudgetInfoDelAction - 刪除

配置檔雙核心

  1. web.xml:定義 ActionServlet、標籤庫、Filter 等
  2. struts-config.xml:串聯 MVC 三層,定義 Action Mapping、Form Bean、Forward

結語

Struts 以模組化元件、靈活擴充、標籤庫加速開發,顯著降低企業級 Web 應用建構複雜度,提升可維護性與擴充性。

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