Hello.jsp页面代码如下:
<body>
<form name="form1" method="post" action="${pageContext.request.contextPath }/Form3.action">
姓名:<input name="username" type="text"/><br/>
密码:<input name="password" type="text"/><br/>
地址:<input name="address" type="text"/><br/>
<input type="submit" value="提交">
</form>
</body>
方法一:
public class form1 extends ActionSupport {
public String execute()
{
//利用ActionContext对象获取
ActionContext context = ActionContext.getContext();
//调用方法获取表单数据
Map<String,Object> map = context.getParameters();
//将Map转化为set可以用来遍历
Set<String> keys = map.keySet();
for(String key:keys)
{
Object[] objs=(Object[])map.get(key);
System.out.println(Arrays.toString(objs));
}
return NONE;
}
}
方法二(最为常用的方法):
public class form2 extends ActionSupport{
public String execute()
{
HttpServletRequest request = ServletActionContext.getRequest();
String name = request.getParameter("username");
String pwd = request.getParameter("password");
String address = request.getParameter("address");
System.out.println(name+" "+pwd+" "+address);
return NONE;
}
}
方法三:
public class form3 extends ActionSupport implements ServletRequestAware{
HttpServletRequest request;
public void setServletRequest(HttpServletRequest request)
{
this.request = request;
}
public String execute()
{
String name = request.getParameter("username");
String password = request.getParameter("password");
String address = request.getParameter("address");
System.out.println(name + " "+password+" "+address);
return NONE;
}
}
strutsxml 配置:
<struts>
<package name="hellodeno" extends="struts-default" namespace="/">
<global-results><result name="success">/Hello.jsp</result></global-results>
<action name = "Form1" class = "com.grl.form1"></action>
<action name = "Form2" class = "com.grl.form2"></action>
<action name = "Form3" class = "com.grl.form3"></action>
<action name = "Form4" class = "com.grl.form4"></action>
</package>
</struts>