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

Struts-config.xml 核心元素完整解析:八大一級、二級、三級標籤屬性詳表

     編輯:關於JSP

Struts 1.x 核心配置檔 `struts-config.xml` 控制整個 MVC 流程。本文系統拆解 8 大一級元素、對應二級標籤功能、三級標籤屬性完整對照表,為維護舊專案、遷移至 Struts 2/Spring MVC 提供精準參考。

八大一級元素

  1. <data-sources> - 資料源配置
  2. <form-beans> - 表單 Bean 定義
  3. <global-exceptions> - 全域異常處理
  4. <global-forwards> - 全域轉發定義
  5. <action-mappings> - Action 映射 (核心)
  6. <controller> - 控制器參數
  7. <message-resources> - 國際化訊息資源
  8. <plug-in> - 外掛模組 (如 Validator、Tiles)

關鍵三級標籤屬性詳表

1. <data-sources> → <data-source>

屬性說明預設值
typeDataSource 實作類別org.apache.commons.dbcp.BasicDataSource
keyServletContext 綁定鍵值Action.DATA_SOURCE_KEY
driverClassJDBC 驅動類別-
urlJDBC 連線字串-
user / password資料庫帳密-
maxCount / minCount連線池最大/最小連線數2 / 1
autoCommittrue=每次 execute 後強制回滾(?) 實為自動提交false

2. <form-beans> → <form-bean>

屬性說明
nameForm Bean 唯一識別名 (Action 參照)
typeActionForm 完整類別名
classname配置類別 (預設 org.apache.struts.config.FormBeanConfig)

3. <global-exceptions> → <exception>

屬性說明
type異常類別完整名
keyResourceBundle 訊息鍵
path異常發生時轉發路徑
scopeActionMessages 存放範圍 (request/session)
handler異常處理器類別 (預設 ExceptionHandler)

4. <global-forwards> → <forward>

屬性說明
name轉發邏輯名
path轉發/重導向 URL
redirecttrue=重導向, false=轉發 (預設)
contextRelativetrue=path 以 / 開頭相對 Context

5. <action-mappings> → <action> (最關鍵)

屬性說明預設/備註
path訪問路徑 (以 / 開頭、無副檔名)必填
typeAction 類別完整名必填
name關聯 Form Bean 名稱需對應 form-bean name
scopeForm Bean 範圍 (request/session)session
validate是否調用 Form Bean validate()true
input驗證失敗轉發頁面-
forward成功轉發路徑 (舊版屬性)建議用 子元素
roles允許角色 (逗號分隔)安全角色檢查
parameter傳遞給 Action 的參數可用 mapping.getParameter() 取得
unknowntrue=處理所有無效 Action URLfalse

6. <controller> 屬性

屬性說明預設
processorClass自定義 RequestProcessor 類別-
bufferSize檔案上傳輸入緩衝大小4096
contentType回應內容型別text/html
debug除錯等級0
locale是否將 Locale 存入 Sessionfalse
tempDir檔案上傳臨時目錄容器預設

7. <message-resources> 屬性

屬性說明預設
parameterResourceBundle 基礎名稱com.demo.struts.resources.ApplicationResources
nulltrue=未找到鍵返回空字串false

8. <plug-in> → <set-property>

<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
  <set-property property="pathnames" value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml" />
</plug-in>

遷移啟示

  • `action-mappings` 對應現代框架的 **路由映射** (Spring MVC `@RequestMapping`、Struts 2 `struts.xml` ``)。
  • `form-beans` 對應 **表單綁定/驗證模型** (Spring `@ModelAttribute` + JSR-303、Struts 2 Action 屬性)。
  • `global-forwards`/`global-exceptions` 對應 **全域異常處理/預設轉發** (Spring `@ControllerAdvice`、`HandlerExceptionResolver`)。
  • `controller`/`plug-in` 對應 **框架擴展點** (Spring `HandlerInterceptor`、插件機制)。

熟悉 `struts-config.xml` 結構,能快速理解 Struts 1 架構精髓,並為現代化遷移提供精準的功能對照地圖。

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