博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
session
阅读量:5074 次
发布时间:2019-06-12

本文共 1008 字,大约阅读时间需要 3 分钟。

 

HTTP协议使用的是无状态的连接

对容器而言,每一个请求都来自于一个新的客户

服务器可以为客户端创建并维护一个Session对象,用于存放数据。 Object

在创建Session对象的同时,服务器将会为该 Session对象产生一个唯一编号,这个编号称之为SessionID
服务器以Cookie的方式将SessionID存放在客户端。
当浏览器再次访问该服务器时,会将SessionID作为Cookie信息带到服务器,服务器可以通过该SessionID检索到以前的Session对象,并对其进行访问

1:发送请求

2:服务器端创建session对象
3:发送保存了JSessionId的cookie存储于客户端
4:再次请求的时候就携带了JSessionId
5:通过令牌sessionId找到相对应的
setAttribute(java.lang.String, java.lang.Object):在Session对象中用一个名字绑定一个对象。
getAttribute(java.lang.String):通过名字获取Session对象中保存的对象。
removeAttribute(java.lang.String):在Session中删除与一个名字对应的对象。
getCreationTime():返回第一次创建会话的时间。
getLastAccessedTime():返回容器最后一次得到该会话ID的请求时间。
setMaxInactiveInterval(int interval):对于会话指定客户请求的最大间隔时间,以秒为单位。-1表示永不过期
getMaxInactiveInterval(int interval):返回客户请求的最大间隔时间。
invalidate():会话结束,当前存在在会话中的所有会话属性也会解除绑定。
getId():此方法返回每个session唯一的标识

销毁session

设置会话超时。
在Session对象上调用invalidate()方法。
服务器重启

设置session时间

<session-config>
<session-timeout>15</session-timeout>
</session-config>

 

 

实例:

   保存状态:

   使用:

 

转载于:https://www.cnblogs.com/javawen/p/10948355.html

你可能感兴趣的文章
[干货] 有了微信小程序,谁还学ReactNative?
查看>>
spark向量、矩阵类型
查看>>
bzoj 1177: [Apio2009]Oil
查看>>
[SETUP] .NET 5 with Linux
查看>>
amoeba + mysql 学习笔记
查看>>
163邮箱tab制作
查看>>
html模板
查看>>
机器学习之路: python 支持向量机 LinearSVC 手写字体识别
查看>>
Python基础——6面向对象编程
查看>>
大一C语言第一次实验:小学生教学系统
查看>>
Object-c NSdata 读取和写入二进制文件
查看>>
IOS设计模式的六大设计原则之接口隔离原则(ISP,Interface Segregation Principle)
查看>>
计算机网络(谢希仁 第七版)运输层 个人笔记
查看>>
设计模式之七:适配器模式(火鸡转换成鸭子)
查看>>
面向对象进阶
查看>>
操刀 requirejs,自己动手写一个
查看>>
初学jmeter
查看>>
C#画图
查看>>
Date类型 - 实践
查看>>
代码复审
查看>>