struts2 action的几种配置方法
struts2 action几乎完全吸收了xwork 的精华,近日学习struts 2,总结一下action的配制方法。首先看一下com.opensymphony.xwork2.Action的接口声明,Action提供 execute() 方法,子类必须实现execute() 方法。
public interface Action {
public String execute() throws Exception;
}
com.opensymphony.xwork2.ActionSupport是com.opensymphony.xwork2.Action的缺省实现,实现了execute()方法。我们开发的Action通常继承com.opensymphony.xwork2.ActionSupport
1.简单的action配置
<action name="logon" class="tutorial.Logon">
<result type="redirect-action">Menu</result>
<result name="input">/tutorial/Logon.jsp</result>
</action>
前台发送调用logon.action的请求,截听器调用默认的execute()方法
2.在开发中通常将多个方法写在一个action中,对于这样action可以采用集中配置方式
2.1.一个方法一个action配制
<action name="delete" class="example.CrudAction" method="delete">
2.2通配符方式
2.2.1 *
<action name="*Crud" class="example.Crud" method="{1}">
method="{1}"表示,第一个通配符是方法.
action调用的例子:addCrud.action, deleteCrud.action, updateCrud.action, viewCrud.action
2.2.2 分割符加上*,分割符如:下划线_, 惊叹号!
<action name="crud_*" class="example.Crud" method="{1}">
调用方式:crud_add.action, crud_delete.action
<action name="crud!*" class="example.Crud" method="{1}">
调用方式:crud!add.action, crud!delete.action
2.3 url pattern: /{model}/{method}.action
“/User/add.action” 调用User的add方法
[来源 www.iocblog.net]
<action name=”*/*” method=”{2}”
class=”com.infoq.actions.{1}Action”>
<result type=”redirect”>/{1}/view.action</result>
<result name=”view”>/{1}/view.jsp</result>[来源 www.iocblog.net]
<result name=”input”>/{1}/edit.jsp</result>
<result name=”home”>/{1}/home.jsp</result>
</action>
文章整理:iocblog
版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。