关于Session的知识记录

翻译 2018年04月16日 11:48:29
Session的知识记录:
        Session 是一个域。

          作用范围:   

        当前会话范围

          生命周期:
                当程序第一次调用到request.getSession()方法时说明客户端明确的需要用到session此时创建出对应客户端的Session对象.
                当session超过30分钟(这个时间是可以在web.xml文件中进行修改的)没有人使用则认为session超时销毁这个session.
                程序中明确的调用session.invalidate()方法可以立即杀死session.
                当服务器被非正常关闭时,随着虚拟机的死亡而死亡.
                如果服务器是正常关闭,还未超时的session会被以文件的形式保存在服务器的work目录下,这个过程叫做session的钝化.下次再正常启动服务器时,钝化着的session会被恢复到内存中,这个过程叫做session的活化.

        

      作用:

       在会话范围内共享数据


session 的原理:
request.getSession()方法会检查请求中有没有JSESSIONID cookie,如果有拿出他的值找到对应的session为他服务。
如果没有则检查请求的URL后有没有以参数的形式带着JSESSIONID过来,如果有则找到对应的Session为浏览器服务器。
如果还找不到则认为这个浏览器没有对应的Session,创建一个Session然后再在响应中添加JSESSIONID cookie,值就是这个Session 的id。
              默认情况下,JSESSIONID 的path为当前web应用的名称,并且没有设置过MaxAge,是一个会话级别的cookie。

这意味着一旦关闭浏览器再新开浏览器时,由于JSESSIONID丢失,会找不到之前的Session。

我们可以手动的发送JSESSIONID cookie,名字和path设置的和自动发送时一样,但是设置一下MaxAge,使浏览器除了。               

             在内存中保存JSESSIONID信息以外还在临时文件夹中以文件的形式保存,这样即使重开浏览器仍然可以使用之前的session。



有关树的知识点

0、二叉树可以为空树 1、n0 = n2 + 1     二叉树中满足上式,其中n0表示度为0的即叶节点的个数,n2表示度为2的节点个数 2、树转化为二叉树的步骤:     (1) 将节点的所有兄弟节...
  • qq_18071075
  • qq_18071075
  • 2017年03月08日 17:00
  • 365

Session案例,显示商品浏览记录

相对于Cookie而言,Session并不经常在服务器中使用,因为session为每一个浏览器用户创建了一个session,这样对服务器的要求无形之中高了很多,而cookie是对每个浏览器发送数据,所...
  • a352193394
  • a352193394
  • 2012年01月11日 22:56
  • 2542

关于session的知识

最近写jsp,感觉session这东西挺神奇的。但就是只知道一些基本操作而已,对其内容及实现完全不懂。以致别人问我session的问题,回答的很含糊,于是决定补一补session的知识。 果断先bai...
  • CP_Hook
  • CP_Hook
  • 2011年05月29日 11:03
  • 300

垃圾回收的一点小知识

前两天被人问到了一个问题,关于垃圾回收中的闭环的问题,大概问题是 a=b.v; b=c.v; c=a.v; 如果把a干掉那么b和c会不会被回收?? 首先划一下内存图...
  • sunyunlong_1
  • sunyunlong_1
  • 2017年12月10日 23:47
  • 66

关于管道的一些知识

今天学习了可以实现进程间通信的管道,其实说白了它也就是一个文件,只是它的功能比较特殊。 那么一个管道文件的最大容量是多少呢? 自己写了一个程序测了一下: 每次写五个字节,最后结果如下: ...
  • ranxiaoxu123
  • ranxiaoxu123
  • 2016年07月02日 10:49
  • 174

session记录访问次数

package com.csdn.session; import java.io.IOException; import java.io.PrintWriter; import javax.se...
  • wang623145708
  • wang623145708
  • 2011年10月25日 19:23
  • 3168

session知识点概括

1.session介绍:session主要用来存储用户的会话所需的信息(用户行为信息),当用户在同一个服务器上实现不同的操作时,session信息会以变量的形式存储在服务器的内存中,保存用户的状态信息...
  • u010805617
  • u010805617
  • 2016年03月16日 10:34
  • 331

工作中关于浏览器相关知识的总结

一、简介       网站是使用HTML、CSS、JS等技术实现静态页面展示的(静态页面:尚未和服务器、数据库交互),代码存放在服务器上,客户端使用应用软件(浏览器)提交对服务器端资源的请求。 浏览器...
  • GistTAT
  • GistTAT
  • 2017年09月13日 15:50
  • 187

字典的一些基础知识

1.字典的一般创建方式: >>> phonebook = {'Alice':'2341','Beth':'9102','Cecil':'3258'} >>> phonebook ...
  • yc_chengzhi
  • yc_chengzhi
  • 2017年12月24日 18:56
  • 93

TCP/IP协议相关知识

      1、TCP/IP协议 TCP/IP协议叫做传输控制/网际协议,它规范了网络上的所有通信设备,尤其是一个主机与另一个主机的数据往来格式和传送方式,是网络中使用的基本通信协议。 ...
  • qq1009015552
  • qq1009015552
  • 2015年09月14日 20:16
  • 392
收藏助手
不良信息举报
您举报文章:关于Session的知识记录
举报原因:
原因补充:

(最多只允许输入30个字)