Struts action-mapping

<action-mapping>元素:包含一个或者N个<action>元素,描述了从特定的请求路径到响应的Action的映射。在<action>元素中可以包含多个<exception>和<forward>子元素,他们分别配置局部异常处理和局部转发。attribute设置Action关联的ActionForm在request或者session范围内的key,就是在request或者session共享内的名称。className对应配置元素的类,默认的是ActionMapping.forward指定转发URL路径。include指定包含URL路径input指定包含表单的URL,当表单验证失败的时候发送的URL.name,指定和该Action关联的Form名字。该名字必须是在form-bean中定义过的,parameter指定Action配置参数。在Action的execute()方法中可以调用ActionMapping的getParameter()方法来读取匹配的参数。roles指定允许调用该Action的安全角色,多个角色之间逗号格开。scope指定Form的存在范围,默认是session.tyep指定Action的完整类名。unknown如果是true表示可以处理用户发出的所有的无效的ActionURL,默认是false.validate指定是否调用ActionForm的validate方法。具体配置示例说明如下:
描述从特定的请求路径到相应的Action类的映射。它具有以下几个属性:

  1. attribute:设置和Action关联的ActionForm Bean在request和session范围内的key。如:Form Bean存在于request范围内,此项设为“myBenas”,则在request.getAttribute("myBenas")就可以返回该Bean的实例。

 2. classsName:和action元素对应的配置元素,默认为:org.apache.struts.action.ActionMapping.

  3. forward:转发的URL路径。

  4. include:指定包含的URL路径。

  5. input:输入表单的URL路径,当表单验证失败时,将把请求转发到该URL。

  6. name:指定和Action关联的Action FormBean的名字,该名字必须在Form-Bean定义过。

  7. path:指定访问Action的路径,以“/”开头,无扩展名。

  8. parameter:指定Actgion的配置参数,在Action类的execute()方法中,可以调用ActionMapping对象的getParameter()方法来读取该配置参数。

  9. roles:指定允许调用该Action的安全角色,多个角色之间用,隔开,在处理请求时,RequestProcessor会根据该配置项来决定用户是否有权限调用Action权限。
struts-config.xml中,每个action的配置中都有一个role属性,这个属性中填写一个模块的名称,这样就建立起了action与模块的多对一关系;
扩展struts中的requestProcessor类(注意如果使用tiles框架,需要继承另外一个tiles专用的类),复写其中的processorRole方法(其他方法也很有用,例如preprocess方法,可以设置提交的字符串都为UTF-8,也可以用户写一些系统的访问日志等等),在这个方法中可以取出当前action的模块名称和当前用户的角色,这样就可以实现对于用户的权限限定了。

  10. scope:指定ActionForm Bean的存在范围,可选取为request和session,默认为session。

  11. type:指定Action类的完整类名。

  12. unknown:如果此项为true,表示可以处理用户发出的所有无效的Action URL,默认为false;

  13. validate:指定是否要调用Action FormBean的validate方法,默认值为ture.

注:forward、include、type属性只能选中其中一项。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值