Рубрики
Без рубрики

Стойки – Пример MappingDispatchAction

– Распорки – Пример MappingDispatchAction

Класс Struts MappingDispatchAction используется для группировки аналогичных функций в один класс действий, и выполнение функции зависит от атрибута параметра соответствующего сопоставления действий. Вот пример, показывающий использование MappingDispatchAction.

1. Класс MappingDispatchAction

Расширяет класс MappingDispatchAction и объявляет два метода – generatexml() и generateexcel() .

Расширяет класс MappingDispatchAction и объявляет два метода – ||generatexml()|| и ||generateexcel()||.

package com.mkyong.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. Конфигурация распорок

Объявляет два сопоставления действий, каждое из которых указывает на один и тот же мой пользовательский класс DispatchAction с разными атрибутами параметров.

Объявляет два сопоставления действий, каждое из которых указывает на один и тот же мой пользовательский класс DispatchAction с разными атрибутами параметров.




 

	
	

	 	
 
			
 
		
		
		
 
			
 
		
		
		
		
		
		
	
	

3. Страница просмотра

На странице JSP ссылки работают следующим образом:

1. /|//Пользовательский XML-файл DispatchAction выполнит метод generateXML() . 2. //Пользовательское действие DispatchAction Excel выполнит метод generate Excel() .

//Пользовательское действие DispatchAction Excel ||выполнит метод ||generate Excel()||.

<%@taglib uri="http://struts.apache.org/tags-html" prefix="html"%>





Struts - DispatchAction Example

html:link

Generate XML File | Generate Excel File

a href

Generate XML File | Generate Excel File

//Пользовательское действие DispatchAction Excel ||выполнит метод ||generate Excel()||.

<%@taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>
<%@taglib uri="http://struts.apache.org/tags-logic" prefix="logic"%>





Struts - DispatchAction Example

4. Проверьте это

http://localhost:8080/StrutsExample/Test.do

Если щелкнуть ссылку ” Создать XML-файл “, она будет перенаправлена в http://localhost:8080/StrutsExample/CustomDispatchActionXML.do

Если щелкнуть ссылку ” Создать файл Excel “, она будет перенаправлена в http://localhost:8080/StrutsExample/CustomDispatchActionExcel.do

Оригинал: “https://mkyong.com/struts/struts-mappingdispatchaction-example/”