美文网首页
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