(23) java web的struts2框架的使用-struts动态调用和通配符
一,动态查找
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>
浙公网安备 33010602011771号