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设置的域名

  • 相关阅读:
    Advanced Configuration Tricks
    Reviewing the Blog Module
    Editing and Deleting Data
    Making Use of Forms and Fieldsets
    Understanding the Router
    SQL Abstraction and Object Hydration
    Preparing for Different Databases
    Java学习理解路线图
    Openstack学习历程_1_视频
    CentOS安装Nginx负载
  • 原文地址:https://www.cnblogs.com/idcode/p/14551431.html
Copyright © 2011-2022 走看看