zoukankan      html  css  js  c++  java
  • Session与cookie

    Session

    当用户登陆系统后,服务器会设置一个当前session失效的时间,以确保在用户长时间不与服务器交互,自动销毁session,退出登录,释放资源。1.

    1、通过web容器配置

    在web容器中设置,以Tomcat-9.0.16为例,在安装目录confweb.xml文件中找到session-config元素,以下是默认配置:

    tomcat默认session超时时间为30分钟,可以根据需要修改,负数或0为永不失效。

    需要注意这里时间单位为分钟,参数必须为整数。

    由于在服务器中设置,则session设置的时间是根据服务器来计算的,而不是客户端。所以如果是在调试程序,应该是修改服务器端时间来测试,而不是客户端。

    2、通过项目中的web.xml中配置

    在项目的web.xml中配置,以Eclipse for JavaEE为例,在WebContentWEB-INFlib文件夹下打开web.xml(如没有则手动创建)

    3、通过java代码动态配置

    session.setMaxInactiveInterval(10) ; //设置非活跃间隔时间
    setMaxInactiveInterval(int second)不同于以上两种方法,并且有几个注意点:

    1. 时间单位为秒
    2. 此方法表示当前session在指定时间内若没有与服务器发生任何交互后失效
    3. 期间用户的任何活动都将刷新session的失效时间,例如在10秒内用户刷新页面将重新计算失效时间

    4、优先级

    如果上述三种方法都设置了,那么优先级按照从高到低:代码设置 > 项目web.xml设置 > 容器web.xml设置(3>2>1)

    Cookie

    cookie(储存在用户本地终端上的数据 )
    Cookie,有时也用其复数形式 Cookies,指某些网站为了辨别用户身份、进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密)。定义于 RFC2109 和 2965 中的都已废弃,最新取代的规范是 RFC6265。(可以叫做浏览器缓存)

    构造函数
    Cookie(String name,String value)

    常用方法

    1、SetComment(String purpose)

    设置描述cookie用途的注释

    2、GetComment()

    返回描述此cookie用途的注释,或者 nullcookie是否没有注释

    3、setMaxAge(int expiry)

    以秒为单位设置cookie的最大年龄

    4、setValue(String newValue)

    创建cookie后,为cookie分配新值。

    5、getPath()

    返回浏览器返回此cookie的服务器上的路径。

    6、getDomain()

    返回为此cookie设置的域名

  • 相关阅读:
    关于跨域,以及跨域的几种方式
    跨域资源共享 CORS 详解
    python 协程与go协程的区别
    查看Mysql正在执行的事务、锁、等待
    undo log,当前读和快照读,redo log----与mvcc
    如何查找MySQL中查询慢的SQL语句
    dbForge Studio 2020 for MySQL v9.0.338破解软件包下载
    阿里云数据盘挂载完整过程
    [原][python]递归遍历文件夹下所有小文件,并删除
    [转][数据结构]R树 RTree
  • 原文地址:https://www.cnblogs.com/idcode/p/13711449.html
Copyright © 2011-2022 走看看