Structs2:映射通配符、动态方法调用

来源:互联网 发布:煲耳机方法知乎 编辑:程序博客网 时间:2024/05/23 13:53

映射通配符

代码示例

<action name="*_*" class="com.actiontest.{1}" method="{2}">    <result>/{0}.jsp</result></action>

映射通配符一般由***\组成,其中**匹配带/的字符串、*匹配不带/的字符串、\作为转义字符,当需要匹配*时使用。

访问时可以用{N}来访问各个元素。举个栗子,假如匹配的actionName为User_save,则{1}代表User{2}代表save{0}代表整个字符串,即User_save。通配符的好处是减少了action的数量,通过这种匹配的手段我们可以直接把一类同意action类的各个方法的请求写成一个action标签,也方便了后期检查维护。


动态方法调用

动态方法调用就是在URL上动态的调用Action类对象的方法。要使用动态方法调用功能首先必须打开动态方法调用的开关,它被设置在default.properties文件里面,默认值为false,要打开则需要在structs.xml里添加该语句:

<constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>

之后就可以通过在URL中添加!methodName来动态地调用某个方法了。需要注意的是,当使用动态方法调用方法后,即使在action标签中给method属性赋值了一个方法映射,action还是会调用动态调用的方法。

0 0