Session的生命周期

Session:在计算机中,尤其是在网络应用中,称为“会话控制”。

操作方法

  • 01

    session的工作原理 (1)当一个session第一次被启用时,一个唯一的标识被存储于本地的cookie中。 (2)首先使用session_start()函数,PHP从session仓库中加载已经存储的session变量。 (3)当执行PHP脚本时,通过使用session_register()函数注册session变量。 (4)当PHP脚本执行结束时,未被销毁的session变量会被自动保存在本地一定路径下的session库中,这个路径可以通过php.ini文件中的session.save_path指定,下次浏览网页时可以加载使用。

  • 02

    Session存储在服务器端,一般为了防止在服务器的内存中(为了高速存取),Sessinon在用户访问第一次访问服务器时创建,需要注意只有访问JSP、Servlet等程序时才会创建Session,只访问HTML、IMAGE等静态资源并不会创建Session,可调用request.getSession(true)强制生成Session。

  • 03

    Session的销毁只有两种情况:第一:session调用了 session.invalidate()方法. 第二:前后两次请求超出了session指定的生命周期时间. 其中Session的生命周期时间可以在web.xml配置. 默认30分钟 在web.xml可以做如下配置: <session-config>      <session-timeout>5</session-timeout></session-config>

  • 04

    Session对浏览器的要求: 虽然Session保存在服务器,对客户端是透明的,它的正常运行仍然需要客户端浏览器的支持。这是因为Session需要使用Cookie作为识别标志。HTTP协议是无状态的,Session不能依据HTTP连接来判断是否为同一客户,因此服务器向客户端浏览器发送一个名为JSESSIONID的Cookie,它的值为该Session的id(也就是HttpSession.getId()的返回值)。Session依据该Cookie来识别是否为同一用户。 该Cookie为服务器自动生成的,它的maxAge属性一般为-1,表示仅当前浏览器内有效,并且各浏览器窗口间不共享,关闭浏览器就会失效。因此同一机器的两个浏览器窗口访问服务器时,会生成两个不同的Session。但是由浏览器窗口内的链接、脚本等打开的新窗口(也就是说不是双击桌面浏览器图标等打开的窗口)除外。这类子窗口会共享父窗口的Cookie,因此会共享一个Session。

(0)

相关推荐

  • 微软会延长Win7零售生命周期吗

    近来,来自很多媒体的报导说微软已经不动声色地停止了Windows7的零售业务。而且预装Windows 7的电脑也会在明年停止销售。然而,自从媒体报导了这个新闻后,微软官网被引用为这些新闻的来源的网页已 ...

  • sqlserver游标基本概念到生命周期的详细学习(sql游标读取)

    在关系数据库中,我们对于查询的思考是面向集合的。而游标打破了这一规则,游标使得我们思考方式变为逐行进行.对于类C的开发人员来着,这样的思考方式会更加舒服。 正常面向集合的思维方式是: 而对于游标来说: ...

  • 软件的生命周期你了解吗?——柠檬班出品

    今天打算给大家来一篇测试相关的普及文,每天跟测试工作息息相关的那些软件产品或软件系统,你了解它的整个生命历程吗?它也许跟我们一样,也要经历孕育.诞生.成长.成熟.衰亡-而这些过程,在我们测试行业中,有 ...

  • servlet的生命周期是怎样的?

    servlet的生命周期 (1)生命周期的含义: servlet容器如何创建servlet对象.如何初始化.如何 调用servlet对象的方法完成请求处理以及如何销毁servlet 对象的整个过程. ...

  • Servlet的生命周期

    对于java Web方面的知识,我想大家应该对Servlet不是很陌生,现在楼主将要分步给大家讲解一下Servlet的生命周期 操作方法 01 Servlet的生命周期一般分四步, 加载-->实 ...

  • 客户管理软件的生命周期分析以及价值判断

    操作方法 01 客户管理软件就是以客户为核心的管理软件,那么这一软件的生命周期是怎样的?如何来判断它的价值呢? 客户管理软件的生命周期分析 1.集成. 这是客户管理软件的应用基础,客户管理软件生命周期 ...

  • session的使用方法

    概念:session把客户资料存在服务器中,给浏览器一个加密凭证,每次登录生成的凭证都不相同,浏览器用cookie保存凭证.下次访问时服务器收到凭证后,打开文件读取session信息.session_ ...

  • Spring三种实例化Bean的方法

    Spring三种实例化Bean的方法 操作方法 01 1.实例化bean的三种方法: (1) 构造器 <!-- 体验1 --> <bean id="personServic ...

  • cookie机制和session机制的区别

    一、cookie机制和session机制的区别 具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案。 同时我们也看到,由于在服务器端保持状态的 ...