Servlet域对象

Servlet中有几个域对象,分别是request,cookie,session,Servletcontext。
什么是域对象呢,一个有作用范围的对象,可以在范围内共享数据,就是域对象。
我先来分别解释一下这几个域对象的作用范围和特点。
request域。是所有servlet对象中最小的一个,只能适应一次请求。超出这个请求的作用范围,比如说重定向之后,就获取不到里面存放的值了。
其次是cookie,客户端会话技术,这时候可能有人要问,什么是会话技术,会话是指,客户端第一次向服务器发送请求,服务器响应,会话建立,直到有一方断开,会话结束。cookie是基于http协议响应头中的set-cookie和请求头cookie实现,英文释义是甜点、饼干的意思,故不能存放大量数据,cookie被响应之后,会将数据存放在客户端,相对不安全。cookie的作用域可以很广,setmaxAge()方法可以使得cookie保留很长的一段时间,不过就只能在本地访问。如果要在其他服务器中访问到cookie,可以setDomain()设置二级域名。这样,其他的服务器就可以正常访问到cookie了。
session,基于cookie实现。服务器端会话技术,存入的数据会保存在服务器。
一般只要服务器不关闭。其他服务器可以访问到这个session。
最后是Servletcontext,servlet程序中最大的域对象,代表了整个web应用。可以和服务器通信,作用范围也和cookie、session差不多,通常只要服务器不关闭,其他域名的服务器也能访问到这个对象。
request域对象,只能在一次请求中访问,即请求转发的时候访问,重对象之后,因为浏览器地址发生改变,指向了另一个地址,变成了另一个请求。所以自然就访问不到了。
其他域对象,因为自身特性,不管是请求转发或重定向之后,都能正常访问和拿到数据。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值