2021-02-18-session介绍以及session和cookie的区别

session介绍以及session和cookie的区别

概念

  • 中文翻译成会话的意思
  • 底层基于cookie来实现
  • 键值对形式
  • 可以用来存后端想存的值,然后在前端页面上可以获取
  • session的超时时间默认是30分钟,可以在项目的web.xml中修改默认超时时间

方法

方法名 作用
getId() 取得SessionID
getCreationTime() 取得session的创建时间
getLastAccessedTime() 取得session的最后一次操作时间
isNew() 判断是否取得新的session(新用户)
invalidate() 让session失效
setAttribute(String s, Object obj) 添加内容
getAttribute(String s) 通过key获取内容

session和cookie区别

对比 cookie session
存放位置 客户端浏览器或者硬盘 服务端
储存数据类型 一个cookie只能保存一个key-value值,并且都是string类型 可以保存任何类型
客户端是否可以操作 可以在浏览器的html端通过js访问 不能操作
服务端是否操作 可以操作 可以操作
创建方式 Cookie(String name, String value) setAttribute(String s, Object obj)
存放的数量 一般一个项目最多20个 对单个客户来说只有一个共享的session
缺点 客户端禁用了cookie就写不进来数据放到客户端不安全 占用服务器的资源,所以session中要少方数据

域对象(四种属性范围)

  • appliaction:在服务器上保存,所有用户都可以使用
  • pageContext:只在一个页面中保存,跳转之后无效
  • request:只在一次请求中保存,服务器跳转后依然有效
  • session:在一次会话中保存,无论任何跳转都可以使用,但是新开浏览器后无法使用

猜你喜欢

转载自blog.csdn.net/qq_41270550/article/details/113805174