一,动态查找
1,配置允许动态调用
<!-- 允许动态方法调用 --> <constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>
2,配置action
<!-- 动态方法调用 看代码的action配置,没有指定method方法,就是没有指定调用哪个方法。 这时候可以在url中这样写 http://localhost:8080/useStruts/take/a/user!login?username=xxxxdedd 称之为动态方法调用。 前提是在xml文件中配置允许动态方法调用的常量。 --> <action name="user" class="actions.UserAction" > <!-- 根据方法返回的是“success”还是“error”异或是其他,返回不同的页面提示。 --> <result name="success">/index.jsp</result> <result name="error">/Error.html</result>
</action>
3,动态调用语法
http://localhost:8080/useStruts/take/a/user!login?username=xxxxdedd
二,通配符
<!-- 这里的*标示通配符,method中的{1}标示第一个*代表的(字符串) 如果是user_*_*也可以用{2}标示第二个*代表的具体值。 有了通配符,你甚至可以这样配置action <action name="user_*" class="actions.UserAction" method="{1}"> <result name="{1}">/{1}.jsp</result>{1} </action> 这样的化,就可以通过通配符,定义一套的多个接口。牛逼不 --> <action name="user_*" class="actions.UserAction" method="{1}"> <!-- 根据方法返回的是“success”还是“error”异或是其他,返回不同的页面提示。 --> <result name="success">/index.jsp</result> <result name="error">/Error.html</result> </action>