上一篇介绍了struts使用的四个步骤。
其中在开发action的时候,可以有三种实现方式:
1,写一个类,继承与ActionSupport
2,写一个类,实现Action接口
3,写一个类,实现业务方法,既不继承ActionSupport,也不实现Action接口
一,继承ActionSupport
package gy.actions; import com.opensymphony.xwork2.ActionSupport; public class UserAction extends ActionSupport { private static final long serialVersionUID = 1L; public String login() { System.out.println("login funciton called"); return SUCCESS;
} }
对应的配置
<action name="user_*" class="gy.actions.UserAction" method="{1}">
<result name="success">/success.html</result>
<result name="error">/fail.html</result>
</action>
二,实现Action接口
package gy.actions; import com.opensymphony.xwork2.Action; public class UserActionSecond implements Action { @Override
public String execute() throws Exception { System.out.println("second action implement function called.");
return SUCCESS;
}
}
对应的配置
<action name="user_second" class="gy.actions.UserActionSecond">
<result name="success">/success.html</result>
<result name="error">/fail.html</result>
</action>
可以看到,不用配置method属性。因为是实现了Action接口,方法名固定
三,不继承也不实现
package gy.actions; public class UserActionThird { public String login() { System.out.println("third function called");
return "success";
}
}
对应的配置
<action name="user_third" class="gy.actions.UserActionThird" method="login">
<result name="success">/success.html</result>
<result name="error">/fail.html</result>
</action>