Session介绍

Session 是另一种记录浏览器状态的机制。不同的是Cookie保存在浏览器中,Session保存在服务器中。用户使用浏览器访问服务器的时候,服务器把用户的信息以某种形式记录在服务器中,这就是Session.

如果说Cookie是检查用户身上的”通行证“来确认用户的身份,那么Session就是通过检查服务器上的”客户信息明细表“来确认用户的身份的。Session相当于在服务器中建立了一份“客户信息明细表”。

Session与Cookie的区别

Cookie Session
存储位置 浏览器 服务器端
安全性 可以分析存放在本地的Cookie进行Cookie欺骗,不安全 安全
存储数据量 不超过4k,并且很多浏览器都限制一个站点最多保存20个Cookie 没有限制
存储数据方式 只能存储字符串 可以存储对象
性能 存放在浏览器不占用服务器性能 占用服务器性能

Session的常用API

API 含义 返回值
getId() 获取sessionId String
setMaxInactiveInterval(int var1) 设置超时时间 void
getMaxInactiveInterval() 获取超时时间 int
setAttribute(String var1, Object var2) 设置session属性 void
getAttribute(String var1) 获取session属性 Object
getAttributeNames() 获取session所有的属性 Enumeration
removeAttribute(String var1) 删除session属性 void
getCreationTime() 获取session的创建时间 long
getLastAccessedTime() 获取session最后活跃的时间 long
isNew() session是否是新的 boolean
invalidate() 销毁session void
Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐