jsp内置对象之————request

本文来源:http://www.xin126.cn/show.asp?id=1761

HTTP协议是在客户端与服务器之间一种传递请求与响应信息的通信协议。在JSP页面中,隐含对象request代表的是来自客户端的请求,通过它可以查看请求参数、请求类型(GET,POST,HEAD等)以及请求的HTTP头(Cookie,Referer等)客户端信息,它是实现 javax.servlet.HttpServletRequest 接口的类的一个实例。严格说来,如果请求所用的是HTTP之外的其他协议,request可以是ServletRequest的子类(而不是HttpServletRequest),但在实践中很少用到。

request 对象的方法有很多,有些是从javax.servlet.ServletRequest接口中继承的,这些函数与协议类型无关,有些是javax.servlet.HttpServletRequest中的方法,它们只支持HTTP协议。从功能角度可以将这些方法分为4类:

1.取得请求参数的方法,如表3-2。

表3-2  取得请求参数的方法

方 法

说 明

String getParameter(String name)

取得name 的参数值

Enumeration getParameterNames( )

取得所有的参数名称

String [] getParameterValues(String name)

取得所有name 的参数值

Map getParameterMap( )

取得一个参数的Map

2.取得请求HTTP 头的方法,如表3-3。

表3-3 取得请求头的方法

方 法

说 明

String getHeader(String name)

取得name 的头的值

Enumeration getHeaderNames()

取得所有的头名称

Enumeration getHeaders(String name)

取得所有名称为name 的头的值

int getIntHeader(String name)

取得name头的整数类型值

long getDateHeader(String name)

取得name头的日期类型值

Cookie [] getCookies( )

取得与请求有关的cookies

3.储存和取得属性方法,如表3-4。

表3-4 存取属性的方法

方 法

说 明

Object getAttribute(String name)

取得request对象中的name属性值

void setAttribute(String name, Object o)

设定名字为name的属性值为o

void removeAttribute(String name)

取消request对象中的name属性

Enumeration getAttributeNames()

返回request对象所有属性的名字

4.其他的方法,如表3-5。

表3-5 其他方法

方 法

说 明

String getContentType()

取得请求数据类型

int getContentLength()

取得请求数据长度

String getProtocol()

取得请求所用的通信协议和版本

String getScheme()

取得使用的URL类型

String getRemoteAddr()

取得发出请求的IP地址

String getRemoteHost()

取得发出请求的完整主机名

ServletInputStream getInputStream()

取得客户端上传数据的数据流

String getQueryString()

取得请求的参数字符串,HTTP的方法必须为GET

String getMethod()

取得GET或POST等

StringBuffer getRequestUrl()

取得请求的URL地址

String getContextPath( )

取得Context 路径(即站点名称)

String getRequestedSessionId( )

取得用户端的Session ID

String getRequestURI( )

取得请求的URL,但是不包括请求的参数字符串

int getRemotePort( )

取得客户的主机端口

String getRemoteUser( )

取得客户的名称

void setCharacterEncoding(String encoding)

设定编码格式,用来解决窗体传递中文的问题

request对象还有其它的方法,可以查阅关手册。request对象中比较重要的方法是:getParameter()、getParameterNames()、getParameterValues()和getHeader()。


你可能感兴趣的:(jsp内置对象之————request)