6

私は Struts フレームワークの初心者です。アクションマッピングが正確にどのように機能するかを理解しようとしています。AJAX リクエストを送信する JavaScript ファイルがあるとします。

$("button").click(function(){
    $.ajax({url: "myTestUrl.do", success: function(result){
        //do something with result
    });
});

私のstruts-config.xmlファイルは次のようになります。

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
<struts-config>
    <form-beans>
        <form-bean name="testForm" type="com.test.TestForm"/>       
    </form-beans>
    
    <!-- Global Forwards -->    
    <global-forwards>
    </global-forwards>
    
    <!-- Action Mappings -->
    <action-mappings>

        <action path="/myTestUrl" 
                type="com.test.TestAction" 
                name="testForm" 
                scope="request" />

    </action-mappings>
    <controller locale="true"/>
</struts-config>

actionとの関係がわかりませんform-bean。私のリクエストは によって処理されTestActionますか? もしそうなら、フォーム Beantype属性の目的は何ですか?

更新

Struts MCV フレームワークの優れた概要が必要な人は、このリンクをチェックしてください。

4

1 に答える 1

5

関係はname、アクション構成の属性によって作成されます。したがって、使用するname="testForm"と、その名前のフォーム Bean がtestFormアクションの execute メソッドに注入されます。

*.do相対 URL がアクション構成のパス値と一致し、サーブレット マッピング パターンでアクション サーブレットをマップした場合、リクエストが処理される可能性があります。

type属性は、<form-bean>おそらく を拡張する Bean クラスの FQCN を入力するために使用されますActionForm。Struts が必要なときに Bean をインスタンス化できるようにするために必要です。

于 2016-04-06T18:59:42.997 に答える