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特点

  1. session用于存储一次会话的多次请求的数据 存在服务器端
  2. session可以存储任意类型 任意大小的数据

Session与cookie的区别

  1. session存储数据在服务器端 Cookie在客户端
  2. Session没有数据大小限制 Cookie有
  3. Session数据安全 Cookie相对于不安全
posted @   baimingze  阅读(14)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示