Session详解(javaweb)

什么是Session

①服务器会给每个用户(浏览器)创建一个Session对象
②一个浏览器独占一个Session,只要浏览器不关闭,Session就一直存在
③用户登陆之后,整个网站都可以访问:用于保存用户信息、保存购物车信息等等…(作用)

Session和Cookie的区别

①cookie是把用户的数据写给用户的服务器,浏览器保存(可以保存多个)
②Session把用户的数据写到用户独占Session中,服务端保存(保存重要信息,减少服务器端资源的浪费)
③Session由服务器对象创建

Session使用流程

使用流程如下:

  1. 得到Session
  2. 给Session传入值
  3. 获取Session的ID
  4. 判断是不是新创建的(用户是不是第一次访问),如果是就输出"第一次登录",如果不是就输出Session的ID。代码如下:
  //得到Session
        HttpSession session = req.getSession();
        //给Session传入信息
        session.setAttribute("name",new Persion("朱林茂",1));
        //获取Session的ID
        String id = session.getId();

        //判断Session是不是新创建的
        boolean aNew = session.isNew();
        if(aNew){
            resp.getWriter().write("Session创建成功,ID:"+id);
        }else {
            resp.getWriter().write("Session已经在服务器中存在了,ID:"+id);
        }

Session的手动销毁和自动销毁

手动销毁:
 //手动注销
        session.invalidate(); //写在类文件中
自动销毁:
  //数字是以以分钟为单位,写在web.xml文件中
  <session-config>
    <session-timeout>1</session-timeout>
  </session-config>

Session易错知识点

  1. Session是每个用户都拥有一个
  2. Session的数据存储在服务器端
  3. 用户访问服务器端时将SessionID放到cookie中带给服务器端,然后服务器端将对应的Session容器中的数据展现给用户
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值