基本信息
文件名称:黑马程序员javaweb教程:HttpServletRequest获取参数.doc
文件大小:141.01 KB
总页数:4 页
更新时间:2025-11-08
总字数:约3.21千字
文档摘要

HttpServletRequest获取参数

1HttpServletRequest获取参数方法

可以使用HttpServletRequest获取客户端的请求参数,相关方法如下:

StringgetParameter(Stringname):通过指定名称获取参数值;

String[]getParameterValues(Stringname):通过指定名称获取参数值数组,有可能一个名字对应多个值,例如表单中的多个复选框使用相同的name时;

EnumerationgetParameterNames():获取所有参数的名字;

MapgetParameterMap():获取所有参数对应的Map,其中key为参数名,value为参数值。

2传递参数的方式

传递参数的方式:GET和POST。

GET:

地址栏中直接给出参数:http://localhost/param/ParamServlet?p1=v1p2=v2;

超链接中给出参数:ahref=”http://localhost/param/ParamServlet?p1=v1p2=v2”???/a

表单中给出参数:formmethod=”GET”action=”ParamServlet”…/form

POST:

表单中给出参数:formmethod=”POST”action=”ParamServlet”…/form

无论是GET还是POST,获取参数的方法是相同的。

Strings1=request.getParameter(“p1”);//返回v1

Strings2=request.getParameter(“p2”);//返回v2

formaction=ParamServletmethod=post

inputtype=textname=p1/br/

inputtype=textname=p2/br/

inputtype=submitvalue=提交/br/

/form

ahref=ParamServlet?p1=v1p2=v2Param/a

Strings1=request.getParameter(p1);

Strings2=request.getParameter(p2);

response.getWriter().print(p1=+s1+br/);

response.getWriter().print(p2=+s2+br/);

Enumerationnames=request.getParameterNames();

while(names.hasMoreElements()){

Stringname=(String)names.nextElement();

Stringvalue=request.getParameter(name);

System.out.println(name+=+value);

}

3多值参数

例如在注册表单中,如果让用户填写爱好,那么爱好可能就是多个。那么hobby参数就会对应多个值:

formaction=ParamServletmethod=post

上网:inputtype=checkboxname=hobbyvalue=netplay/br/

踢球:inputtype=checkboxname=hobbyvalue=football/br/

看书:inputtype=checkboxname=hobbyvalue=read/br/

编程:inputtype=checkboxname=hobbyvalue=programme/br/

inputtype=submitvalue=提交/br/

/form

//获取所有名为hoby的参数值

String[]hobbies=request.getParameterValues(hobby);

System.out.println(Arrays.toString(hobbies));

4获取所有参数,并封装到Map中

request.getParameterMap()方法返回Map类型,对应所有参数。其中Map的key对应参数的名字;Map的value对应参数的值。

formaction=ParamServletmethod=post

姓名:inputtype=textname=name/br/

年龄:inputtype=textn