Struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.devMode" value="true" /><!-- 开发模式,修改xml文件后不需要重启tomcat,立即生效 -->
<package name="actions" namespace="/actions" extends="struts-default">
<!--extends="struts-default" 的作用是从另外一个包继承,继承之后另外一个包有的,这个包也会有,这里表示默认 -->
<!-- 采用通配符可以减少配置,{1}代表第一个*号,以此类推...
url为"http://localhost:8080/z-struts2-04/actions/helloadd",
actions是namespace,
helloadd:hello是第一个*,即{1},add是第二个*,即{2} -->
<!--default-action-ref指默认的action,当系统找不到/actions下对应的action时,默认的会走helloadd的action
<default-action-ref name="helloadd"></default-action-ref>
<action name="helloadd">
<result>/helloadd.jsp</result>
</action>-->
<!-- global-results 是指公用的一个结果集 一定要放在最上面,不然报错-->
<global-results>
<result name="query">/helloquery.jsp</result>
</global-results>
<action name="helloadd" class="com.test.TestAction" method="add">
<result name="success">/helloadd.jsp</result><!-- 如果不写name,那么就是默认的sucess -->
<result name="del">/hellodel.jsp</result>
</action>
</package>
</struts>
Action
public class TestAction extends ActionSupport {
private int age;
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String add() throws Exception {
if(age==1){
return "success";
}else if(age==2){
return "del";
}else{
return "query";//当age不是1和2时,就会返回query,这个structs.xml的action中没有query,所以会返回到公用的结果集
}
}
}