- 配置文件学习完成,下面的重点是Action类的三种写法
-
Action类就是一个POJO类
- 什么是POJO类,POJO(Plain Ordinary Java Object)简单的Java对象.简单记:没有继承某个类,没有实现接口,就是POJO的类。
-
Action类可以实现Action接口
- Action接口中定义了5个常量,5个常量的值对应的是5个逻辑视图跳转页面(跳转的页面还是需要自己来配置),还定义了一个方法,execute方法。
- 大家需要掌握5个逻辑视图的常量
- SUCCESS – 成功.
- INPUT – 用于数据表单校验.如果校验失败,跳转INPUT视图.
- LOGIN – 登录.
- ERROR – 错误.
- NONE – 页面不转向.
-
Action类可以去继承ActionSupport类(开发中这种方式使用最多)
- 设置错误信息
-
第一种方式:
public class Action1 {
public String execute(){
System.out.println("pojo方式");
return null;
}
}
第二种方式:
import com.opensymphony.xwork2.Action;
public class Action2 implements Action{
public String execute() throws Exception {
System.out.println("实现action接口的方式");
return SUCCESS;
}
}
第三种方式:
import com.opensymphony.xwork2.ActionSupport;
public class Action3 extends ActionSupport{
@Override
public String execute() throws Exception {
System.out.println("继承ActionSupport类的方式");
return NONE;
}
}
为了分别执行这三个Action,需要在struts.xml中进行配置,配置如下:
<struts>
<package name="aa" namespace="/" extends="struts-default">
<!-- POJO类的方式 -->
<action name="demo1Action" class="com.huida.action.Action1"></action>
<!-- 实现Action接口的方式 -->
<action name="demo2Action" class="com.huida.action.Action2">
<result name="success">/suc.jsp</result>
</action>
<!-- 继承ActionSupport的方式 -->
<action name="demo3Action" class="com.huida.action.Action3">
</action>
</package>
</struts>
启动服务器,在浏览器中分别输入如下进行访问Action:
运行结果为:
在控制台输出如下提示语句: