struts2三種實現方式、通配符、servletAPI的兩種實現方法。

 

 1.Action的三種實現方式


        第一種方式:action類是一個pojo,既不現任何接口,也不繼承任何的類
        第二種方式:action類實現Action接口
        第三種方式:繼承ActionSupport類(進行數據驗證,顯示錯誤,國際化)


 2.使用傳統的配置方式訪問Action(推存的方式)
 

        繼承ActionSupport類,並編寫自定義方法
        自定義方法要求:必須是public 
        返回值必須是String,如果返回值爲null,就是不跳轉任何視圖
        必須無參數
            例如:public String demo(){return "demo";}
        給action添加method屬性

 

 3.瞭解通配符訪問

public class CustomerAction extends ActionSupport{
       public String add(){
          System.out.println("--add--");
        return SUCCESS;
     }
       public String update(){
          System.out.println("--update--");
        return SUCCESS;
      }
  }

  struts配置文件的配置:通配符

   <!--  *代表所有  {1}代表佔位符 站action中的第一個方法 注意:這兩種形式不能混用  -->
   <action name="*" class="action" method="{1}">
      <result name="success">/success.jsp</result>
   </action>
   <action name="*_*" class="action" method="{1}{2}">
      <result name="success">/success.jsp</result>
   </action>

 4.實現ServletAPI(request,response)

 

方法一:直接獲得(推薦)

​
//ServletActionContext.getRequest();獲得request對象.
System.out.println(ServletActionContext.getRequest());
System.out.println(ServletActionContext.getResponse());

​

 

方法二:實現接口

//方式二:實現接口ServletRequestAware
public class ServletAction02 extends ActionSupport implements ServletRequestAware,
		ServletResponseAware{
	private HttpServletRequest request;
	private HttpServletResponse response;
	//得到request接口
	public void setServletRequest(HttpServletRequest request) {
		this.request = request;
	}
	//得到response接口
	public void setServletResponse(HttpServletResponse response) {
		this.response = response;
	}
	public String execute() throws Exception {
		System.out.println("--ServletAction02--");
		System.out.println(request);
		System.out.println(response);
		return null;
	}
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章