session运行机制

1、用户(浏览器)向Web应用服务器发送第一次请求时,请求头部中不包含sessionID(session唯一标识),则服务器会为该客户端创建一个新的session,并生成一个与此session对应的sessionID,然后将sessionID随着本次响应返回给客户端;

2、用户(浏览器)再次向Web应用服务器发送请求时,请求头部包含sessionID,则服务器首先会通过sessionID找到对应的session,以确定是这个客户端访问服务器,此时sessionID不会再次随着本次响应返回给客户端;如果该session因超出时长而被Web服务器删除,则重新创建一个新的session,并生成一个与此session对应的sessionID,然后将sessionID随着本次响应返回给客户端;

客户端没有禁用cookie的情况下,客户端使用cookie保存sessionID。如果cookie禁用,则会自动转化为用URL-rewriting(URL重写,URL中包含sessionID)技术实现。

session常用方法

setAttribute:设置指定名字的参数值;session中保存的对象随Tomcat服务器正常关闭(通过shutdown.bat关闭)而保存到work文件夹相应目录中(Tomcat安装根目录\work\Catalina\localhost\XXX),随Tomcat的启动而重新使用。

getAttribute:获取指定属性的值,如果该属性值不存在则返回null;

removeAttribute:删除session中的一个属性

getId():获取sessionID

isNew():每个请求是否会产生新的session对象

setMaxInactiveInterval():设置停止操作后session对象的有效时间。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值