Cookie和Session补充
来源:互联网 发布:linux c语言 sleep 编辑:程序博客网 时间:2024/06/05 19:36
上次写了一篇关于cookie和session的文章:Session与Cookie解析,继续深入学习了之后,做几点补充。
Cookie
1、cookie的作用范围
cookie分为两种,区分的标准就是其是否具有生命周期。如果不对cookie设置生命周期的话,则该cookie存放于内存中,默认只对浏览器当前窗口及其子窗口有效,对其他新的页面无效。
而设置生命周期之后,对其他页面也有效。
如:
<span style="font-size:18px;">Cookie c1 = new Cookie("username","Mr-Yang");//建立一个Cookieresponse.addCookie(c1);//不加时间限制的Cookie c2 = new Cookie("username","Mr-Yang");//建立一个Cookiec2.SetMaxAge(60*60);//设置Cookie有效时间为1小时response.addCookie(c2);</span>
下面我们通过图来理解一下:
图一:未设置生命周期
图二:设置了生命周期
2、服务器可以向客户端写入的内容只能是文本内容,而客户端也可以通过禁用cookie来阻止浏览器的写入。
另外,读取cookie时,一个servlet或JSP设置的cookie能被同一路径或子路径下面的servlet/jsp读到,其他路径无法读到。如:
<span style="font-size:18px;"><servlet-mapping> <servlet-name>ShowCookies</servlet-name> <url-pattern>/path/ShowCookies</url-pattern>//初始路径,此时可以读到</servlet-mapping><servlet-mapping> <servlet-name>ShowCookies</servlet-name> <url-pattern>/newPath/ShowCookies</url-pattern>//子路径,此时可以读到</servlet-mapping> <servlet-name>ShowCookies</servlet-name> <url-pattern>/ShowCookies</url-pattern>//非子路径,此时不可以读到</servlet-mapping></span>
Session
1、关于Session,这里就补充一点吧,就是向浏览器发送SessionID的方式
第一个就是通过cookie:
<span style="font-size:18px;"><pre name="code" class="java">HttpSession session = new request.getSession(true);//实例化一个Session,保证接收状态</span>
<span style="font-size: 18px; font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">session.setAttribute("username","Mr-Yang");//写入内容</span>当cookie被浏览器禁用后,怎么办?
此时就要采取第二种方式,重新URL:
<span style="font-size:18px;">HttpSession session = new request.getSession(true);response.getWriter.println(response.encodeURL(request.getRequestURL().toString()));</span>
这样比较麻烦,但是能够无视浏览器禁用cookie的限制。
随着学习的深入,对后续内容有了更深刻的理解之后,再继续分享给大家吧~
0 0
- Cookie和Session补充
- session和cookie
- Cookie和Session专题
- Cookie和Session专题
- Cookie和Session专题
- Cookie和Session专题
- 关于Session和Cookie
- Cookie和Session专题
- session 和 cookie
- Cookie和Session专题
- cookie和session
- 浅谈Session和Cookie
- Cookie和Session专题
- Cookie和Session专题
- Cookie和Session专题
- Cookie和Session专题
- Cookie和Session专题
- Cookie和session
- 微服务设计模式
- 白盒测试
- 2015全国大学生电子设计竞赛个人总结-F题
- 数据库连接、释放连接、查询数据库、存入数据库
- 创始人的高度决定了公司人才高度
- Cookie和Session补充
- java中的内部类
- qt开发----小白的成长伊始
- 台湾国立大学机器学习技法.听课笔记(第六讲):Support Vector Regression
- 匿名对象
- Android基础学习之viewpager(左右滑页卡)
- SQL Server 2008 R2 死锁监控
- 关于JavaScript中数组去重(任意数据类型)
- 自己-社会-机器学习