【第1步】多个submit的Form表单页面 or 在jsp页面中使用URL进行提交
- <s:form action="UserAction">
- <!--
- s:submit中的method属性和struts.xml中action标签中的method属性一致(method属性指定了要调用的方法)。
- 在s:submit中可以为一个action设置多个method,而在struts.xml中action标签中只能设置一个method。
- 当然,在struts.xml中可以为一个action指定多个actionName(action别名)。
- 总结:一个Action类,可以对应多个action别名,每个action别名对应多个method属性(通过s:submit标签设置)。
- -->
- <s:submit value="进入List页面" method="list" />
- <s:submit value="进入Add页面" method="add" />
- </s:form>
- <!-- 通过URL访问 -->
- <!-- 通过请求参数来指定要执行的动作,格式如下:http://localhost:8080/contextPath/actionName!method.action -->
- http://localhost:9090/TCTS/user/UserAction!list.action
- http://localhost:9090/TCTS/user/UserAction!add.action
【第2步】Form表单对应的Action类
- public class UserAction extends ActionSupport {
- public String list() {
- System.out.println("================这是list()方法================");
- return "list";
- }
- public String add() {
- System.out.println("================这是add()方法================");
- return "add";
- }
- public String queryAll() {
- req = ServletActionContext.getRequest();
- uList = userDAO.queryAll();
- req.getSession().setAttribute("uList", uList);
- return SUCCESS;
- }
- }
【第3步】Struts.xml
- <struts>
- <package name="struts" extends="struts-default">
- <action name="UserAction" class="userAction">
- <result name="list" type="redirectAction">UserAction_queryAll</result>
- <result name="add">/user/user_insert.jsp</result>
- </action>
- <action name="UserAction_queryAll" class="userAction" method="queryAll">
- <result>/user/user_list.jsp</result>
- </action>
- </package>
- </struts>