HttpServletRequest的方法
获取请求行的相关信息
1. getMethod()?
??? 该方法返回HTTP请求消息中的请求方式(如GET、POST、HEAD、PUT和、DELETE等),也就是请求行中的第一部分的内容;
2. getRequestURI()?
??? 该方法返回请求行中的资源名部分,也就是位于URL的主机和端口之后、参数部分之前的那部分内容;
3. getQueryString()?
??? 该方法返回请求行中的参数部分,也就是资源路径后面的问号(?)以后的所有内容,如果没有参数部分,则返回null;
4. getProtocol()?
??? 该方法返回请求行中的协议名和版本,即请求行的第三部分;
5. getContextPath()?
??? 方法返回请求URL所属于的Web应用程序的路径,这个路径以“/”开头(如/collection),表示相对于整个Web站点的根目录,路径结尾不含“/”。如果请求URL属于Web站点的根上当,那么返回结果为空字符串(“”);
6. getPathInfo()?/
??? 该方法返回请求URL中的额外路径信息;
7. getPathTranslated()??
??? 该方法反回URL中的额外路径信息所对应的资源的真实路径;
8. getServletPath()??
??? 该方法返回Servlet的名称或Servlet所映射的路径;
例:http://localhost:8080/it315/controller/one.jsp?param1=abc
getMethod: GET
getRequestURI:it315/controller
getQueryString:param1=abc
getProtocol:HTTP/1.1
getContextPath:/it315
getPathInfo:/one.jsp
getPathTranslated:C:\tomcat-5.5.4\webapps\it315\one.jsp
getServletPath:/controller
?
获取表单的请求参数信息
1. getParameter()
? 该方法用于返回某个指定名称的参数的值,其完整的语法定义如下:
? ? public java.lang.String getParameter(java.lang.String name)
2. getParameterValues()
?该方法用于返回HTTP请求消息中同一个参数名所对应的所有参数a值,其完整的语法定义如下:
??? public java.lang.String[] getParameterValues(java.lang.String name)
3. getParameterNames()
?该方法用于返回一个包含请求消息中所有请求参数名的Enumeration对象,其完整的语法定义如下:
??? public java.util.Enumeration getParameterNames()
4. getParameterMap()
?该方法用于将请求消息中所有的参数名和值装入一个Map对象中返回,其语法定义如下:
??? public java.util.Map getParameterMap()
获取请求消息的实体内容
? 以POST方式提交FORM表单时,其中的表单字段元素信息都将作为HTTP消息的实体内容(消息正文)发送给Web服务器。对于HTTP请求消息中的实体内容,ServletRequest以输入流的方式提供给Servlet程序读取,ServletRequest接口中定义了如下两个方法:
? <一>getInputStream()? 字节输入流对象,如果实体内容中包含二进制数据,那么就只能使用getInputStream方法返回的输入流对象来读取;
??<二>getReader() 字符输入流对象,该方法返回一个代表实体内容的BufferedReader对象,返回的BufferedReader对象将实体内容中的字节数据按照请求消息中指定的字符集编码转换成文本字符串。在调用getReader方法之前,可以调用ServletRequest的setCharacterEncoding方法指定其返回的BufferedReader对象所使用的字符编码,默认为iso8859-1。
?