3.Struts2中Action類的三種寫法


一.普通的POJO類(沒有繼承沒有實現)-基本不使用

public class DemoAction1 {
    
    public String execute(){
        
        System.out.println("DemoAction1是普通的POJO類...");
        
        return null;
    }
}
        <!-- 普通的POJO類 -->
        <action name="action1" class="com.struts2.web.action2.DemoAction1"/>

  基本不使用

 

二.實現Action接口-基本不使用

import com.opensymphony.xwork2.Action;

/**
 * action類的編寫2:實現action接口
 * @author NEWHOM
 *
 */
public class DemoAction2 implements Action {

    @Override
    public String execute() throws Exception {
        // TODO Auto-generated method stub
        
        System.out.println("DemoAction2是一個實現了Action接口的類...");
        
        return null;
    }

}
        <!-- 實現了Action接口 -->
        <action name="action2" class="com.struts2.web.action2.DemoAction2" />

* Action接口中定義了5個常量,5個常量的值對應的是5個邏輯視圖跳轉頁面(跳轉的頁面還是需要自己來配置),還定義了一個方法,execute方法。 * 5個邏輯視圖的常量 * SUCCESS -- 成功. * INPUT -- 用於數據表單校驗.如果校驗失敗,跳轉INPUT視圖. * LOGIN -- 登錄. * ERROR -- 錯誤. * NONE -- 頁面不轉向.

  基本不使用

 

三.繼承ActionSupport類-經常使用

import com.opensymphony.xwork2.ActionSupport;

/**
 * action編寫3:繼承ActionSupport類
 * @author NEWHOM
 *
 */
public class DemoAction3 extends ActionSupport {

    private static final long serialVersionUID = 1L;
    
    @Override
    public String execute() throws Exception {
        // TODO Auto-generated method stub
        
        System.out.println("DemoAction3是一個繼承了ActionSupport的類...");
        
        return null;
    }
    
}
        <!-- 繼承了ActionSupport類 -->
        <action name="action3" class="com.struts2.web.action2.DemoAction3"/>

  ActionSupport本身繼承了許多的類,利於編寫代碼

  開發中經常使用這種方式


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM