设置action
<package name="front" extends="struts-default" namespace="/">
<action name="index" class="com.bjsxt.struts2.front.action.IndexAction1">
<result name="success">/ActionIntroduction.jsp</result>
</action>
</package>
返回匹配的action,这个IndexAction1只需要拥有public String execute()方法就可以作为Action。
并且这个Action每次接受请求处理都是new出来的。这样就可以避免线程同步的问题,当然也是把损耗内存和性能作为前提的。
默认Action类不继承Action,容器接受请求处理动作默认调用Action#execute。
ActionSupport为xwork中的类,关联xwork的src。
定义Action的三种方式:
1、
public class IndexAction1 {
public String execute() {
return "success";
}
}
2、
public class IndexAction2 implements Action {
@Override
public String execute() {
return "success";
}
}
3、
public class IndexAction3 extends ActionSupport {
@Override
public String execute() {
return "success";
}
}
总结:
具体视图的返回可以由用户自己定义的 Action 来决定
具体的手段是根据返回的字符串找到对应的配置项,来决定视图的内容
具体 Action 的实现可以是一个普通的 java 类,里面有 public String execute 方法即可
或者实现 Action 接口
不过 最常用的是从 ActionSupport 继承,好处在于可以直接使用 Struts2 封装好的方法