Struts中Action的编写及访问
Action的写法:3种
Action类编写成POJO的类。
Action类实现一个Action的接口。
Action类继承ActionSupport类(常用的)。
1、Action类编写成POJO的类
什么是POJO类?
就是一个普通的,只默认继承Object的java简单类。
测试代码:
// 第一种方式:普通的POJO类,编写execute()方法
public class HelloAction1 {
public String execute() {
System.out.println("HelloAction1的execute()方法执行了。。。");
return null;
}
}
2、Action类实现一个Action的接口
测试代码:
import com.opensymphony.xwork2.Action;
/*
实现的接口中定义了5个逻辑视图常量:
SUCCESS :成功
ERROR :失败
LOGIN :登录出错页面跳转
INPUT :表单校验的时候出错
NONE :不跳转
*/
// 第二种方式:实现Action接口,实现execute()方法
public class HelloAction2 implements Action {
@Override
public String execute() throws Exception {
System.out.println("HelloAction2的execute()方法执行了。。。");
return NONE;
}
}
3、Action类继承ActionSupport类(常用的)
测试代码:
import com.opensymphony.xwork2.ActionSupport;
// 第三种方式:继承ActionSupport类,重写execute()方法
public class HelloAction3 extends ActionSupport {
@Override
public String execute() throws Exception {
System.out.println("HelloAction3的execute()方法。。。");
return NONE;
}
}
推荐使用第三种方式编写Action类,继承ActionSupport类。
继承了ActionSupport,就继承了一系列的功能。
Action的访问:3种
通过method设置。
通过通配符的方式进行配置(经常用的)。
通过动态方法访问。
在开发中,并不会一个请求对应一个Action类。
而是一个模块中的多个请求对应一个Action类,一个请求对应类中的某一个方法。
1、通过method设置
(1)JSP代码:
<h3>通过method的方式</h3>
<a href="${ pageContext.request.contextPath }/user_find">查询用户</a>