Session_细节和特点
Session_细节
两次获取Session是否为同一个
- 默认情况下 不是
- 如果需要相同 则可以创建Cookie 键为JSESSIONID 设置最大存活时间 让cookie持久化保存
运行结果
java代码
package com.bai.Session; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.*; import java.io.IOException; @WebServlet("/SessionDemo3") public class SessionDemo3 extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //使用Session共享数据 //1.获取Session HttpSession session = req.getSession(); System.out.println(session); //期望客户端关闭后 session也能相同 Cookie c = new Cookie("JSESSIONID", session.getId()); c.setMaxAge(60*60); resp.addCookie(c); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doGet(req, resp); } }
运行结果
Session销毁
- 服务器关闭时销毁Session
- Session对象调用invalidate()
- session默认失效时间 30分钟
Session特点
- session用于存储一次会话的多次请求的数据 存在服务器端
- session可以存储任意类型 任意大小的数据
Session与cookie的区别
- session存储数据在服务器端 Cookie在客户端
- Session没有数据大小限制 Cookie有
- Session数据安全 Cookie相对于不安全
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本