会话和请求的区别

转自 https://zhidao.baidu.com/question/2012008668505571268.html
Http协议是Java Web开发里servlet/jsp这些的基础,理解上面的内容先要了解Http协议Http协议基本是有一个request/response模型也就是请求/响应模型的,通俗讲也就是“一问一答”的模式:
浏览器向服务器发起request请求,这就是“问”;

服务器收到请求后,返回response响应,这就是“答”。

说到这里,Servlet/JSP里的request和resonse这两个对象你清楚了吧,其实就是Java Web把Http协议里这两个东西抽象成Java的类型而已。

接下来说Java Web开发里的session,也就是“会话”。
Http是一个“没有状态”的协议,也就是说原始Http协议里,浏览器的request请求之间是没关系的,通俗的说就是“说了下句忘了上句”。实际要想开发Java Web应用,应该让这些请求之间是有关系的,这就需要在多个request请求之间创建一些联系,这就是会话session。其实"会话“这个中文翻译是不错的,通俗讲就是:“要想顺利交谈,需要说了下句想起来上句”。
所以这些建立联系的request请求是属于某个session的,这就是你题目问到的:“当前请求的会话”的意思。

下面说说session技术实现的细节吧:(大致对应你问题里的三个方面)
(1)实际Java Web应用中,session会话会占用服务器的一段内存空间保存多个有联系request请求之间需要保存的共享变量;
(2)大部分session的实现对同一客户的相同浏览器的一段时间(称作session超时时间)内的请求作状态共享和保持,因此你打开不同的浏览器比如IE,以及Chrome会开启不同的session,而且你关闭浏览器后这个session也随之销毁了;
(3)session通过getAttribute()和setAttribute()这一对方法进行共享变量的获取和设置,也就是说要想保存状态就需要用这一对方法。
  • 9
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值