structs2的action實現方式

露水上的青蛙發表於2017-09-14

Action的實現方式
第一種:
在web.xml中新增配置
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

在structs.xml中新增配置
<struts>
<!--extends必須寫,直接或者間接繼承struts-default name自定義 -->
<package name="hello" extends="struts-default">
<!-- name是請求名稱,不要寫/;class對應action完全限定名=包名+類名 -->
<action name="hello" class="cn.sxt.action.HelloAction">
<!-- result是結果集 name和對應action中的方法的返回值匹配,預設是success -->
<result name="success">/index.jsp</result>
</action>
</package>
</struts>

action實現類
package cn.sxt.action;

public class HelloAction {
public HelloAction() {
System.out.println("constructor");
}
public String execute(){
System.out.println("hello struts2");
return "success";
}
}
第二種實現方法 實現介面action
package cn.sxt.action;

import com.opensymphony.xwork2.Action;

public class InterfaceAction implements Action{

public String execute() throws Exception {
// TODO Auto-generated method stub
System.out.println("interface action");
return SUCCESS;
}
}
第三種實現方法 繼承ActionSupport
package cn.sxt.action;

import com.opensymphony.xwork2.ActionSupport;

public class ExtendsAction extends ActionSupport{

/**
*
*/
private static final long serialVersionUID = 1L;

}

相關文章