1.4 ServletRequest
对于每一个HTTP请求,Servlet容器都会创建一个ServletRequest实例,并将它传给Servlet的Service方法。ServletRequest封装了关于这个请求的信息。
ServletRequest接口中有一些方法。
public int getContentLength()
返回请求主体的字节数。如果不知道字节长度,这个方法就会返回−1。
public java.lang.String getContentType()
返回请求主体的MIME类型,如果不知道类型,则返回null。
public java.lang.String getParameter(java.lang.String name)
返回指定请求参数的值。
public java.lang.String getProtocol()
返回这个HTTP请求的协议名称和版本。
getParameter是在ServletRequest中最常用的方法。该方法通常用于返回HTML表单域的值。在本章后续的“处理表单”小节中,将会学到如何获取表单值。
getParameter也可以用于获取查询字符串的值。例如,利用下面的URI调用Servlet:
http://domain/context/servletName?id=123
用下面这个语句,可以通过Servlet内部获取id值:
String id = request.getParameter("id");
注意,如果该参数不存在,getParameter将返回null。
除了getParameter外,还可以使用getParameterNames、getParameterMap和getParameterValues获取表单域名、值以及查询字符串。这些方法的使用范例请参阅“Http Servlets”小节。