1.HTTP请求分为GET和POST两种,GET用于普通HTTP请求,POST用于表单的提交。
GET会把请求的参数追加到URL后面,先在URL后面加一个“?”,然后“参数名=参数值”的形式追加参数,
如:http://127.0.0.1/SomeServlet?usename=xxx&password=xxx.
该URL包含了两个参数, usename和password,它们的值均为xxx.
如果请求的参数或参数的值包含中文字符或空格字符,则浏览器会使用UTF8的编码方式进行编码。
空格字符就会转换成20%进行发送。
请求的URL若包含了若干个%,则证明URL中包含了中文字符,进行了重新编码。
2.Web容器把每一次HTTP请求都看成ServletRequest对待,在到达Servlet的service()方法之前,
Web容器会创建一个javax.servlet.ServletRequest接口的实现类的对象,并以service()方法参数的
形式提供给Servlet使用。
Servlet通过ServletRequest接口的getParameter()、getParameterValues()方法获取客户端提交的
参数。前一个方法用于只有一个值的参数,后者用于有多个值的参数。
服务处理方法service()的参数列表中,包含了请求接口实现的对象,只需要直接使用该对象即可。
以下是获取请求参数示例代码:
//获取参数名为username的用户名,返回字符串
String uersname = request.getParameter("username");
//获取参数名为hobby的爱好数组,返回的是字符串数组
String[] bobbies = request.getParameterValues("hobby")