struts2方法 的调用
有两种方式:
1.一对一 (即一个按钮(button)对应struts.xml中的一个action )所有的绿色
2. 多对一 (即多个按钮(button)对应struts.xml中的一个action )看蓝色的如何调用 (直接使用方法名user是struts.xml 中的name 属性)
<head><script type="text/javascript">
function mylogin(){
var forms = document.getElementById("form");
//一个提交对应struts.xml 中一个Action
//forms.action = "mylogin.action"; //form表单中的 action 是属性
//动态的方法调用
forms.action = " user!logins.action"
forms.submit();
}
function myregister(){
var forms = document.getElementById("form");
//forms.action = "myregister.action";
//动态的方法调用
forms.action = " user!registers.action";
forms.submit();
}
</script>
</head>
<body>
<form action="login.action" method="post" name="form" id="form">
用户名<input type="text" name="username"/>
密码<input type="text" name="password"/>
<input type="button" value="登录" id="login" οnclick="mylogin()"/>
<input type="button" value="注册" id="register" οnclick="myregister()"/>
</form>
</body>
所用的方法
package test;
import com.opensymphony.xwork2.ActionSupport;
@SuppressWarnings("serial")
public class MyRegisterAction extends ActionSupport{
private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String logins() {
System.out.println("logins方法....");
return "loginSuccess";
}
public String registers() {
System.out.println("registers方法....");
return "regSuccess";
}
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>
<package name="loginsss" extends="struts-default" >
<action name="mylogin" class="test.MyRegisterAction" method="logins">
<!-- method 是 Action中所对应的方法 -->
<result name="loginSuccess">/loginSuccess.jsp</result>
</action>
<action name="myregister" class="test.MyRegisterAction" method="registers">
<result name="regSuccess">/registers.jsp</result>
</action>
<action name="user" class="test.MyRegisterAction">
<result name="loginSuccess">/loginSuccess.jsp</result>
<result name="regSuccess">/registers.jsp</result>
</action>
</package>
</struts>