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

Struts 2 初體驗與核心配置詳解

     編輯:Java 綜合教學

Struts 2 初體驗與核心配置詳解

學習版本:Struts 2.3.15.3

一、導入必要的 JAR 包

建議參考官方提供的 blank 示例專案,將所需的 JAR 包複製到專案的 WEB-INF/lib 目錄下。

二、核心配置文件

主要包含 web.xml 和 struts.xml 兩個文件。

web.xml 配置核心過濾器

Struts 2 的入口是一個 Servlet 過濾器,負責攔截所有請求並委派給框架處理。

<filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

struts.xml 定義 Action 映射

在 src 目錄下創建 struts.xml,定義封裝、Action 及結果視圖。

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "https://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
    <package name="default" namespace="/" extends="struts-default">
        <action name="helloworld" class="com.nucsoft.struts2.helloworld.HelloWorld" method="firstMethod">
            <result name="success">/success.jsp</result>
        </action>
    </package>
</struts>

三、創建 Action 類

Action 類無需實現特定介面,只需提供處理請求的公共方法,返回 String 類型的結果碼。

public class HelloWorld {
    private static final String SUCCESS = "success";
    
    public String firstMethod() {
        System.out.println("com.nucsoft.struts2.helloworld.HelloWorld.firstMethod");
        return SUCCESS;
    }
}

四、核心配置詳解

web.xml 解析

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter 是 Struts 2 的核心控制器,相當於 Spring MVC 中的 DispatcherServlet,負責初始化框架、攔截請求並委派處理。

struts.xml 核心元素

  • <struts>:根元素。
  • <package>:定義一個功能模組。
    • name:包的唯一標識,供引用。
    • extends:繼承父包(通常為 struts-default),繼承預設攔截器、結果類型等配置。
    • namespace:命名空間,預設為 /,用於區分同名 Action。
    • abstract:設為 true 時表示抽象包,不能定義 Action。
  • <action>:對應一個用戶請求。
    • name:請求名稱(不含副檔名),對應 URL 中的路徑。
    • class:處理請求的類全限定名,預設為 ActionSupport。
    • method:指定處理方法,預設為 execute()。
  • <result>:定義處理後的響應結果。
    • name:對應 Action 方法返回的字串,預設為 success。

Action 類開發規範

  1. 不需要實現任何介面或繼承特定類(POJO 即可)。
  2. 通過 setXxx() 方法接收請求參數(自動類型轉換,支援 GET/POST)。
  3. 通過 getXxx() 方法向頁面提供數據。
  4. 處理方法簽名固定:public String xxx(),無參數,返回結果字串。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved