1:动态方法调用,在struts.xml中开启,实现效果为
<!-- 让struts2支持动态方法调用 --> <constant name="struts.enable.DynamicMethodInvocation" value="true" />
http://localhost:8080/Struts2_Maven/submit!login.action,动态方法调用是指有一个!,由!前面的内容指定页面请求的action,这里是submit,所以在我的com.zhao.action包中有SubmitAction类与之对应,!后面的内容负责指定处理该请求具体的方法,为login()方法,这样的好处是 一个action可以处理多个请求。
package com.zhao.action; import com.opensymphony.xwork2.ActionSupport; public class SubmitAction extends ActionSupport{ public String login(){ System.out.println("Success"); return "login"; } }
2:指定method属性,在struts.xml中,action的name和method一起来定位我们处理请求的具体类中的具体方法。
http://localhost:8080/Struts2_Maven/submit.action
<package name="default" extends="struts-default"> <action name="submit" class="com.zhao.action.SubmitAction" method="login"> <result>index.jsp</result> </action> </package>
3:通配符方式,这个就更方便了。
http://localhost:8080/Struts2_Maven/submit_login.action
<package name="default" extends="struts-default"> <action name="submit_*" class="com.zhao.action.SubmitAction" method="{1}"> <result>index.jsp</result> </action> </package>