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方法

 

<action name=”*/*” method=”{2}”
class=”com.infoq.actions.{1}Action”>
<result type=”redirect”>/{1}/view.action</result>
<result name=”view”>/{1}/view.jsp</result>
<result name=”input”>/{1}/edit.jsp</result>
<result name=”home”>/{1}/home.jsp</result>
</action>

 

 
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值