session java 管理_java底层是如何管理session的?

session(会话)代表着基于BS架构的应用存在的,通常的BS架构中客户端和服务端的通信是通过HTTP或者HTTPS进行通信的,因为HTTP协议本身是不存在状态的,所以为了保证客户端能够持续与服务端进行通信,基于cookie的session机制应运而生了。

首先,cookie是http协议header中的一部分,服务端可以设置cookie,它会随着http协议其他参数和body部分一起发给服务端。

当客户端和服务端 首次通信的时候,服务端会启动响应的session,这个session会有一个sessionId和一个session文件标识着这个会话过程,服务端会将这个sessionId设置到客户端的cookie中。

客户端下次访问只需要将这个id携带在cookie中,服务端会检查服务器上有没有与这个id对应的session文件,有就表明这次会话是已知的客户端,并根据请求返回响应的数据即可。

在PHP中,是通过session_start() 启动session的。

在java中,类javax.servlet.http.HttpSession。每一个HttpSession代表用户的一个会话。

综上所诉,就是session的底层原理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值