手记

Struts2动态调用的三种方法

动态方法调用的三个方式:(动态方法调用就是为了解决一个Action对应对个请求的处理,以免Action太多)
1)指定method属性;

<action name="add" method="add" class="com.imooc.action.HelloWorldAction">
<result>/add.jsp</result>
</action>

2)感叹号方式(不推荐);
先在package外面添加:

<constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>
<action name="helloworld" class="com.imooc.action.HelloWorldAction">
<result>/reuslt.jsp</result>
<result name="add">/add.jsp</result>
</action>

访问add方法则地址最后目标改为:helloworld!add.action
3)通配符方式。(推荐方式)
第一个代替{1},第二个代替{2},result里的name是Action的返回值,action的里method是Action里的方法名,调用某个方法时最后目标就输入 {1}_{2}.action;这样可以访问多个Action里的方法

<action name="*_*" method="{2}" class="com.imooc.action.{1}Action">
<result>/result.jsp</result>
<result name="add">/{2}.jsp</result>
<result name="update">/{2}.jsp</result>
</action>
2人推荐
随时随地看视频
慕课网APP