HTTP协议使用的是无状态的连接
对容器而言,每一个请求都来自于一个新的客户服务器可以为客户端创建并维护一个Session对象,用于存放数据。 Object
在创建Session对象的同时,服务器将会为该 Session对象产生一个唯一编号,这个编号称之为SessionID服务器以Cookie的方式将SessionID存放在客户端。当浏览器再次访问该服务器时,会将SessionID作为Cookie信息带到服务器,服务器可以通过该SessionID检索到以前的Session对象,并对其进行访问1:发送请求
2:服务器端创建session对象3:发送保存了JSessionId的cookie存储于客户端4:再次请求的时候就携带了JSessionId5:通过令牌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>
实例:
保存状态:
使用: