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