01.在上面案例的login.jsp页面新增
<%-- 2.动态方法的调用 前提是在 struts.xml文件中开启 不推荐! --%> <a href="user/users!add">新增</a> <a href="user/users!update">修改</a>
02.在struts.xml文件中开启 动态方法调用
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd"> <struts> <constant name="struts.devMode" value="true"/> <!-- 开启动态方法的调用 默认在default.properties文件中是关闭的!--> <constant name="struts.enable.DynamicMethodInvocation" value="true"/> <package name="default" namespace="/user" extends="struts-default"> <default-class-ref class="cn.bdqn.action.LoginAction"/> <action name="login" method="login"> <result>/loginSuccess.jsp</result> </action> <!-- 动态方法的调用 <a href="user/users!add">新增</a> 01.查询user命名空间 02.查询name是users的action 03.把!之后的add当成method执行 --> <action name="users"> <result name="addSuccess">/addSuccess.jsp</result> <result name="updateSuccess">/updateSuccess.jsp</result> </action> </package> </struts>
03.修改LoginAction中的代码
package cn.bdqn.action; import com.opensymphony.xwork2.ActionSupport; import com.opensymphony.xwork2.ModelDriven; /** * 用户登录的action */ public class LoginAction extends ActionSupport{ @Override public String execute(){ System.out.println("默认执行execute()"); return "success"; } //用户登录的方法 public String login(){ System.out.println("执行login()"); return "success"; } //新增用户的方法 public String add(){ System.out.println("执行add()"); return "addSuccess"; } //修改用户的方法 public String update(){ System.out.println("执行update()"); return "updateSuccess"; } }
04.创建对应的成功界面!!!! 省略!