Session--会话
🐲作用
一个用户的不同请求的处理需要使用相同数据
解决相同用户发送不同请求时的数据共享问题
🐲概念
- Session表示会话,在一段时间内,用户与服务器之间的一系列的交互操作。
- Session对象:用户发送不同请求的时候,在服务器端保存不同请求共享数据的存储对象
🐲特点
- Session是依赖于cookie技术的服务器端的数据存储技术
- 由服务器进行创建
- 每个用户独立拥有一个session对象
- 每次关闭浏览器时,重新请求都会开启一个新的session对象,因为返回的JSESSIONID保存在浏览器的内存中,是临时cookie,所以关闭之后自然消失。
- 默认存储时间是三十分钟
🐲Session机制
用户使用浏览器第一次向服务器发送请求,服务器在接受到请求后,调用对应的Servlet进行处理。在处理过程中会给用户创建一个session对象,用来存储用户请求处理相关的公共数据,并将此session对象的JSESSIONID以session的形式存储在浏览器中(临时存储,浏览器关闭即失效)。用户在发送第二次请求及后续请求时,请求信息中会附带JSESSIONID,服务器在接收到请求后,调用对应的session进行请求处理,同时根据JSESSIONID返回其对应的session。
🐲Session使用
-
获取session对象
HttpSession session = request.getSession();
-
修改session会话的保持时间
session.setMaxInactiveInterval(int second);
-
设置强制失效
session.invalidate();
-
设置参数
session.setAttribute(String s,Object o);