Struts - MappingDispatchAction Beispiel
Die Struts-Klasse MappingDispatchAction wird verwendet, um ähnliche Funktionen in einer einzelnen Aktionsklasse zu gruppieren. Die Ausführung der Funktion hängt vom Parameterattribut der entsprechenden ActionMapping-Klasse ab. Hier ist ein Beispiel für die Verwendung von MappingDispatchAction.
Laden Sie dieses Beispiel herunter -Struts-MappingDispatchAction-Example.zip
1. MappingDispatchAction-Klasse
Erweitert die MappingDispatchAction-Klasse und deklariert zwei Methoden -generateXML() undgenerateExcel().
MyCustomDispatchAction.java
package com.example.common.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.MappingDispatchAction;
public class MyCustomDispatchAction extends MappingDispatchAction{
public ActionForward generateXML(ActionMapping mapping,ActionForm form,
HttpServletRequest request,HttpServletResponse response)
throws Exception {
request.setAttribute("method", "generateXML is called");
return mapping.findForward("success");
}
public ActionForward generateExcel(ActionMapping mapping,ActionForm form,
HttpServletRequest request,HttpServletResponse response)
throws Exception {
request.setAttribute("method", "generateExcel is called");
return mapping.findForward("success");
}
}
2. Federbeinkonfiguration
Deklariert zwei Aktionszuordnungen, die jeweils auf dieselbe MyCustomDispatchAction-Klasse mit unterschiedlichen Parameterattributen verweisen.
struts-config.xml
3. Seite anzeigen
Auf der JSP-Seite funktionieren die Links wie folgt:
1. /CustomDispatchActionXML führt die MethodegenerateXML() aus.
2. /CustomDispatchActionExcel führt die MethodegenerateExcel() aus.
TestForm.jsp
Struts - DispatchAction Example
html:link
|
a href
Generate XML File
|
Generate Excel File
DispatchExample.jsp
Struts - DispatchAction Example
4. Probier es aus

Wenn Sie auf den Link "Generate XML File" klicken, wird er anhttp://localhost:8080/StrutsExample/CustomDispatchActionXML.do weitergeleitet

Wenn Sie auf den Link "Generate Excel File" klicken, wird er anhttp://localhost:8080/StrutsExample/CustomDispatchActionExcel.do weitergeleitet
