Struts action 的配置

   兩類不一樣的actionjava

   1、繼承的是org.apache.struts.action.Action類,其方法的參數是action,而且要覆寫execute方法;
   2、繼承的是org.apache.struts.actions.DispatchAction類其方法的參數是method;
  1、
   1.action的定義
  import org.apache.struts.action.Action;
  import org.apache.struts.action.ActionForm;
  import org.apache.struts.action.ActionForward;
  import org.apache.struts.action.ActionMapping;
  import org.apache.struts.upload.FormFile;
  
   public class PersonAction extends Action{
   
   //此處最好定義靜態的關於action的方法名稱
   private static String ORWARD_QUERY = "query";
   
   @override
   public ActionForward execute(
   ActionMapping mapping, 
   ActionForm form, 
   HttpServletRequest request,
   HttpServletResponse response,
   ){
   PersonForm actionform = (PersonForm) form;
   
   String action = actionform.getAction();
   
   if (action == null || action.length() == 0) {
   action = "query";
   }
   if (action.equalsIgnoreCase("ORWARD_QUERY")) {
   return query( mapping, form,request,response);
   }else if(){
   
   }
   return null;
   
   }
   
   public ActionForward query(
   ActionMapping mapping,
   ActionForm form,
   HttpServletRequest request,
   HttpServletResponse,
   )
   PersonForm actionform = (PersonForm) form;
   
   String para = actionform.getName();
   
   //邏輯判斷
   
   request.setAttribute("para",para); //有時候還能夠這樣傳遞參數,不推薦,這樣程序缺少靈活性
   
   
   return mapping.findForward(ORWARD_QUERY);
   
   }
   }
   
   2.其XML文件的配置:
  
      name="PersonForm" 
   scope="request" 
   path="/Person" 
   type="com.test.action.PersonAction">
   
  
   
   2、繼承DispachAction
   
   1.類
   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 OwnerChangeAction extends DispatchAction {
   
   
   //此處最好定義靜態的關於action的方法名稱 
   private static String ORWARD_QUERY = "query"; 
   public ActionForward query( 
   ActionMapping mapping, 
   } ActionForm form, 
   HttpServletRequest request, 
   HttpServletResponse, 
   ) 
   PersonForm actionform = (PersonForm) form; 
   
   String para = actionform.getName(); 
   
   //邏輯判斷 
   
   request.setAttribute("para",para); //有時候還能夠這樣傳遞參數,不推薦,這樣程序缺少靈活性 
   
   
   return mapping.findForward(ORWARD_QUERY); 
   
   } 
   
   2. 其XML文件的配置: 
   
  
   
      parameter="method" 
   path="/test/person" 
   scope="request" 
   type="com.test.action.PersonAction" 
   name="personform" 
   attribute="personform"> 
相關文章
相關標籤/搜索