Struts struts-config.xml 动作映射解释

Struts struts-config.xml action-mapping explained

我是 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>

我不明白 actionform-bean 之间的关系。 TestAction 会处理我的请求吗?如果是这样,表单 bean type 属性的用途是什么?

更新:

对于需要全面了解 struts MCV 框架的任何人,请查看 this link。

该关系由操作配置中的 name 属性建立。因此,如果您使用 name="testForm",那么名称为 testForm 的表单 bean 将被注入到操作的执行方法中。

如果相对 url 与操作配置中的路径值匹配并且您已将操作 servlet 映射到 servlet 映射模式中的 *.do,您的请求可能会被处理。

<form-bean>type 属性用于输入可能扩展 ActionForm 的 bean class 的 FQCN。 Struts 需要它才能在需要时实例化 bean。