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

Стойки – Пример диспетчерского действия

– Стойки – Пример диспетчеризации

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

1. Класс диспетчеризации

Создайте пользовательский класс DispatchAction, расширив класс DispatchAction и объявив два метода – generatexml() и generateExcel() .

Создайте пользовательский класс DispatchAction, расширив класс DispatchAction и объявив два метода – ||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.DispatchAction;

public class MyCustomDispatchAction extends DispatchAction{
 
	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. Конфигурация распорок

Объявляет сопоставление действий “Пользовательское действие диспетчеризации” с атрибутом параметра и значением “действие”. Значение параметра “действие” используется для управления тем, какой метод вызывать – generatexml() или generateExcel().

Значение параметра “действие” используется для управления тем, какой метод вызывать – generatexml() или generateExcel().




 

	
	

	 	
 
			
 
		
		
		
		
		
	
	

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

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

1. //Пользовательское действие DispatchAction.do?действие= generateXML выполнит метод generateXML() . 2. //Пользовательское действие DispatchAction.do?действие=создать Excel выполнит метод создать Excel() .

//Пользовательское действие DispatchAction.do?действие=создать Excel||выполнит метод ||создать 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.do?действие=создать Excel||выполнит метод ||создать 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/CustomDispatchAction.do?action = generateXML генерировать

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

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