<result>
<param name="location">success.jsp</param>
</result>
result标签中没有type,默认为dispatcher转发,对应类public class ServletDispatcherResult extends StrutsResultSupport{}
对应的StrutsResultSupport类中有private String location;和location的set和get方法,location字符串的内容就是success.jsp
Action接口中有execute方法,ActionSupport实现了Action接口,自定义Action继承了ActionSupport类
Result接口中有execute方法,StrutsResultSupport类实现了Result接口,ServletDispatcherResult类与ServletRedirectResult类和ServletActionRedirectResult类继承了StrutsResultSupport类,分别对应三种常见的Action返回类型dispatcher,redirect,redirectAction
<package name="packageName" namespace="/namespace" extends="struts-default">
<action name="actionName" class="cn.className类的全名" method="methodName">
<result name="method返回值" type="默认dispatcher">target.jsp</result>
</action>
</package>
①可以通过action标签中的method属性改变action默认请求方法
②利用url中actionName!methodName.action调用制定方法
①不同actionName访问同意Action中add方法
通配符*代表任何字符串,可以用在action中name属性中,比如action中name属性值为*_add,当url访问a_add.action,b_add.action,c_add.action时都会映射到*_add
②访问不同Action中的add方法
<action name="*_add" class="cn.{1}" method="add">
<result name="add">success.jsp</action>
</action>
访问<a href="${pageContext.request.contextPath}/pattern/PersonAction_add.action">测试</a>时就相当于
<action name="PersonAction_add" class="cn.PersonAction" method="add">
<result name="add">success.jsp</action>
</action>
访问<a href="${pageContext.request.contextPath}/pattern/StudentAction_add.action">测试</a>时就相当于
<action name="StudentAction_add" class="cn.StudentAction" method="add">
<result name="add">success.jsp</action>
</action>
③请求PersonAction中的aa,bb,cc方法
<action name="PersonAction_*" class="cn.StudentAction" method="{1}">
<result name="success">success.jsp</action>
</action>
访问<a href="${pageContext.request.contextPath}/pattern/patternAction_aa.action">测试</a>
访问<a href="${pageContext.request.contextPath}/pattern/patternAction_bb.action">测试</a>
访问<a href="${pageContext.request.contextPath}/pattern/patternAction_cc.action">测试</a>
④一劳永逸的配置方法但是效率低
<action name="*_*" class="cn.pattern.{1}" method="{2}">
<result name="success">success.jsp</result>
</action>