您的位置:首页 > 理论基础 > 计算机网络

ServletRequest,HttpServletRequest ServletResponse,ServletResponse的区别

2015-11-23 16:05 537 查看
ServletRequest,HttpServletRequest
ServletResponse,HttpServletResponse
的区别:

所有
Servlet
响应都实现
ServletResponse
接口。
ServletResponse
接口
主要有以下方法:


1
)从
Servlet
中可以通过
getWriter
方法取得
PrintWriter
对象,来输
出字符数据。从
Servlet
中可以通过
getOutputStream
方法取得
ServletoutputStream
对象。
ServletOutputStream
既可以输出字符数据,也可
以输出
MIME
格式的二进制数据。如果
getWriter
方法已经被使用过,当使用
getOutputStream
时,会有
java.lang.IllegalStateException
例外抛出。


2

setContentType
方法:在响应中可以表明内容格式和长短。


3

setBufferSize
方法:设置
Web
容器的缓冲器大小
; getBufferSize
方法返回
Web
容器的缓冲器大小
; resetBuffer
方法清空并重置缓冲器,使用
reset
方法清空缓冲器、状态头信息,使用
flushBuffer
方法将缓冲器内的所有
输出内容向客户传递。使用
isCommitted
方法判断是否响应已经被履行。“履
行”的定义是指状态码冬耕信息已经被写入响应。


4

setLocal
方法设定响应的地域信息,主要在
Web
程序的国际货币国际
化时使用。
这个方法应该在
getWriter
之前被使用。
默认的
Web
服务器的地域信
息。

HttpServletResponse
继承了
ServletResponse
接口,并提供了与
Http

议有关的方法,这些方法的主要功能是设置
HTTP
状态码和管理
Cookie



1

setStatus
方法用来设置
Servlet
向客户端返回的状态码,它用来设
置没有出错的状态。如果
Servlet
运行出错,
Servlet
可以使用
sendError
方法
设置状态码,如
sendError(int sc)
方法设置错误状态代码。
sendError(int
sc,String msg)
方法除了设置状态码,还向客户发出一条错误信息。


2

setHeader
可以指定特定名称的头信息的值,
addDateheader

addIntHeader

setDateHeader

setIntHeader
可以加入或理性特定时间或整数
型头信息。


3

addCookie
方法可以在
Web
服务器响应中加入
Cookie
对象,这个对象
将被浏览器所保存。
Cookie
机制也被用来维护会话状态。


4

sendRedirect
方法向客户发出临时重新导向的响应。它生成的响应状
态码为
302
。该响应给了客户一个新的
URL
风趣。如果缓冲器已经被清空,这个
方法会弹出一个
IllegalStateException
例外。

内置对象是不需要声明,直接可以在
JSP
中使用的对象,
JSP
有以下几种内置对
象:

request request
表示
HttpServletRequest
对象。它包含了有关浏览器请求的
信息,并且提供了几个用于获取
cookie, header,

session
数据的有用的方
法。

response
response
表示
HttpServletResponse
对象,并提供了几个用于设置送
回浏览器的响应的方法(如
cookies,
头信息等)

out
out
对象是
javax.jsp.JspWriter
的一个实例,
并提供了几个方法使你能用
于向浏览器回送输出结果。

pageContext
pageContext
表示一个
javax.servlet.jsp.PageContext
对象。它
是用于方便存取各种范围的名字空间、
servlet
相关的对象的
API
,并且包装了
通用的
servlet
相关功能的方法。

session session
表示一个请求的
javax.servlet.http.HttpSession
对象。
Session
可以存贮用户的状态信息

application applicaton
表示一个
javax.servle.ServletContext
对象。这有
助于查找有关
servlet
引擎和
servlet
环境的信息

config
config
表示一个
javax.servlet.ServletConfig
对象。该对象用于存取
servlet
实例的初始化参数。

page page
表示从该页面产生的一个
servlet
实例。

Servlet API
中的几个对象

JSP
提供了八个内部对象,而其中的五个内部对象对应于
Servlet
API
中的七个
对象,
这也就使得我们正常理解并熟练使用
Servlet
中的这七个对象显得尤其重
要。这五个
JSP
的内部对象和
Servlet API
中的对象的对应关系是:

request






javax.servlet.http.HttpServletRequest

javax.servlet.ServletRequest
response






javax.servlet.http.HttpServletResponse

javax.servlet.ServletResponse
session
对象对应于:
javax.servlet.http.HttpSession
application
对象对应于:
javax.servlet.ServletContext
config
对象对应于:
javax.servlet.ServletConfig
javax.servlet.http.HttpServletRequest
这是一个接口,在我们提到接口之前,还是让我们来复习一下
Java
中接口的一
个初步的解释:

接口在语法上与类相似,
但是接口没有实例,
使用接口,
只是指定类必须做什么
而不是如何做。

HttpServletRequest
接口用来处理一个对
Servlet

HTTP
格式的请求信息。

javax.servlet.ServletRequest
这也是一个接口,这个接口定义一个
Servlet
引擎产生的对象,通过这个对象,

Servlet
可以获得客户端请求的数据。
这个对象通过读取请求体的数据提供包括






















javax.servlet.http.HttpServletRequest
也只是该接口的一个扩展,也就是
说,
该接口的所有方法也可以被
javax.servlet.http.HttpServletRequest
所使
用。

javax.servlet.http.HttpServletResponse
接口

该接口用来描述一个返回到客户端的
HTTP
回应。

javax.servlet.ServletResponse
接口

该接口用来定义一个
Servlet
引擎产生的对象,通过这个对象,
Servlet
对客户
端的请求作出响应。
这个响应应该是一个
MIME
实体,
可能是一个
HTML
页、
图象
数据或其他
MIME
的格式。
javax.servlet.http.HttpServletResponse
接口是该
接口的扩展。

javax.servlet.http.HttpSession
接口

该接口用来描述一个
session

至于什么是
session
我想在这里就没必要说了吧。

javax.servlet.ServletContext
接口

该接口用来定义了一个
Servlet
的环境对象。
也可是认为这是多个客户端共享的
信息,它与
session
的区别在于应用范围的不同,
session
只对应于一个用户。

javax.servlet.ServletConfig
接口

该接口定义了一个对象,通过这个对象,
Servlet
引擎配置一个
Servlet
。每一

ServletConfig
对象对应着一个唯一的
Servlet


javax.servlet.http.Cookie


这个类描述了一个
cookie

cookie
的作用其实与
session
很类似,只是
cookie
保存在客户端,
session
保存在服务器端
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: