2021-02-18-session介绍以及session和cookie的区别
其他
2021-02-27 01:26:06
阅读次数: 0
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