美文网首页
Cookie和Session

Cookie和Session

作者: 寂静的春天1988 | 来源:发表于2020-08-10 15:01 被阅读0次

    cookie:
    Cookie是不能跨浏览器的。(很好理解,cookie保存在浏览器端,那么肯定是不能跨浏览器的。)
    cookie除了name和value属性,还要maxage属性(过期时间)如果不设置或者<0,关闭浏览器就失效了。
    设置maxAge=0,就表示立马删除这个cookie

    设置跨域cookie

    比如想一个cookie在www.baidu.com,zhidao.baidu.com中共享
    设置cookie的domain为cookie.setDomain(".baidu.com")
    cookie.setPath("/")

    HttpSession

    保存在服务端。
    session生命周期在浏览器关闭之前。主要是关闭浏览器后再开浏览器就会得到新的sessionId,找不到原来的session了。

    session原理

    request.getSession()
    获取cookie中的JsessionId
    1、获取JsessionId不存在,创建session保存起来,把新创建的JsessionId保存道cookie中
    2、JsessionId存在,通过JsessionId查找session对象,如果没查到,创建session,将session保存起来,把新创建的JsessionId保存到cookie中
    3、JsessionId存在,找到session,返回session。

    服务器不会马上给你创建session,在第一次获取session时创建。
    jsp默认会创建session

    配置session的最大不活动时间

    req.getSession().setMaxInactiveInterval(30);
    web.xml中配置
    <session-config>
    <session-timeout>30</session-timeout>
    </session-config>
    默认时常30分组。

    URL重写

    session依赖于cookie的sessionId,如果浏览器禁用了cookie。可以使用URL重写方式来维护sessionId。就是在所有请求参数上加JsessionId参数。

    相关文章

      网友评论

          本文标题:Cookie和Session

          本文链接:https://www.haomeiwen.com/subject/nxvfdktx.html