action的配置

1.action配置在package里

 

2.例子:默认方法是execute


  <action name="login" class="com.tarena.netctoss.action.LoginAction">
   <result name="success" type="redirectAction">main</result>
   <result name="fail">/WEB-INF/jsp/main_loginform.jsp</result>
  </action>

 

3.action配置method

 

 <action name="userLogin" class="action.LoginAction" method="login">
  <result name="success">/success.jsp</result>
  <result name="error">/error.jsp</result>
 </action>
 
 <action name="userRegist" class="action.LoginAction" method="regist">
  <result name="success">/success.jsp</result>
  <result name="error">/error.jsp</result>
 </action>
 


4.result的name属性的值是action对应方法(默认方法是execute,也可以指定method)返回的字符串


 根据相应的字符串调用不同的result,
 因为可以指定方法,所以一个action根据不同的方法名响应多个请求

 

5.action的class和method属性可以不指定,用于调转页面(没有数据处理的时候)


 class默认为ActionSupport,其execute方法中:return success
 例子:
 <action name="loginform">
  <result>/WEB-INF/jsp/main_loginform.jsp</result>
 </action>

 

6.使用通配符映射(wildcard mappings)方式

 

 在struts.xml文件中配置<action…>元素时,
 它的name、class、method属性都可支持通配符,
 这种通配符的方式是另一种形式的动态方法调用。
 
 当我们使用通配符定义Action的name属性时,
 相当于用一个元素action定义了多个逻辑Action:
 
 例子:
 <action name="user_*" class="action.UserAction" method="{1}">
            <result name="success">/success.jsp</result>
            <result name="error">/error.jsp</result>
 </action>
 
 如上,
  <action name=”user_*”>定义一系列请求URL是user_*.action模式的逻辑Action。
  同时method属性值为一个表达式{1},表示它的值是name属性值中第一个*的值。
 
 例如:
   用户请求URL为user_login.action时,将调用到UserAction类的login方法;
   用户请求URL为user_regist.action时,将调用到UserAction类的regist方法
 
 
 
 
 
 

 


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值