struts2学习:配置篇 值请求处理元素 - 编程入门网
也没有在配置文件中指定其它的方法,框架会抛出异常。
很多时候,多个action mapping会共享一个相同的模式,这个时候我们可以使用通配符方法。还是举例来说,如下所示。 <action name=”editCrud” class=”example.CrudAction” method=”edit”/> <action name=”deleteCrud” class=” example.CrudAction” method=” delete”/> 上述两个action mapping调用的是同一个action类,只是执行的方法不同而已,并且所执行的方法名都是action mapping名字的开头部分,而且action mapping的名字除去方法名之后剩下的部分是一样的。这种情况下我们可以使用一个action mapping来代替上面两个action mapping: <action name=”*Crud” class=”example.CrudAction” method=”{1}”> 匹配过程是这样的 (以请求的action mapping的名字是editCrud为例) : ● *可以表示任何内容,因此任何以Crud结尾的action mapping都会匹配上 ● 当editCrud匹配上后,*的内容此时就是edit ● 调用名字为第一个*号的内容的方法,此时仅有一个*号,并且此时它的内容为edit,因此action类的edit方法被调用了 ● 同理,如果请求的action是deleteCrud,匹配成功后*的内容就是delete,调用的方法就是delete了。 使用通配符匹配方法可以让我们减少配置文件的内容,是配置更加简洁。 如果我们没有给action元素指定class属性的话,框架会默认它的class属性为com.opensymphony.xwork.ActionSupport,如果想指定别的类作为默认的Action类,可以通过package的default-action-ref属性来设置。在设置了default-action-ref之后,如果我们在package中没有匹配到所请求的action,那么这个默认的action就会被调用。一般一个命名空间下最好只定义一个默认的action。 3.Result元素配置 action类处理完一个请求后会返回一个字符串,这个字符串将被用来选择一个result元素。通常一个action mapping会有多个result,代表各个可能不同的结果。ActionSupport中定义了几个标准的result token,如下所示:
struts2学习:配置篇 值请求处理元素(3)时间:2011-03-24通常我们都会自定义一些result token类匹配特定的情况。 result元素负责完成两个工作:1.提供一个逻辑名用于与action类的返回字符串进行匹配;2.提供一个返回类型(Result Type)。尽管大多数的result只是简单的转向一个页面或模板,但是我们还可以利用其它的返回类型(Result Type)做其它的一些事情。我们可以为每个包设置默认的返回类型(Result Type),如果一个包继承了另外一个包,它可以选择设置自己的默认返回类型或者直接使用父包的。设置默认返回类型的方式如下:
Result元素有两个属性:name和type,它们都是可选的,name属性的默认值是“success”,type的属性为我们所设置的默认返回类型,如上例中即为dispatcher。 定义在action元素里面的result我们可以称之为局部result,除此之外我们可以还可以全局的result,这些result会被多个action所共享。框架会首先寻找嵌套在action元素中的result,如果没有匹配的就去全局result中去寻找。一个全局result的例子如下:
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |