黑马程序员技术交流社区

标题: 【石家庄校区】常用的会话技术Cookie&Session [打印本页]

作者: 哥.兜裡有煙    时间: 2017-12-19 17:15
标题: 【石家庄校区】常用的会话技术Cookie&Session
本帖最后由 小石姐姐 于 2017-12-20 11:45 编辑

会话技术        1.       什么是会话 :                        * 用户打开一个浏览器访问页面,访问网站的很多页面,访问完成后将浏览器关闭的过程称为是一次会话.
        2.       常用的会话技术
                        *  Cookie        :将数据保存到客户端浏览器.
                        *  Session :将数据保存到服务器端.
        3.      为什么使用会话技术?
                        * 私有的数据,购物信息数据保存在会话技术中.
----------------------------------------------------------------------------------------------------------------------------
Cookie
1.操作Cookie
        存储Cookie:
                response.addCookie(Cookie c);
        获取Cookie:
                Cookie[] cs = request.getCookies();

2.Cookie对象
        构造方法:
                Cookie(String name,String value);
        常用方法:
                String getName();
                String getValue();
                void setPath(String uri);   //setPath("/day10");  //该Cookie只能在/day10目录下使用.  设置Cookie的有效路径
                void setMaxAge(int expiry);  //setMaxAge(30);  //Cookie在30秒内有效.  设置Cookie的有效时间

4. Cookie的分类有关:
      4.1  会话级别的Cookie:默认的Cookie.关闭浏览器Cookie就会销毁.
      4.2  持久级别的Cookie:可以设置Cookie的有效时间.那么关闭浏览器Cookie还会存在. 手动销毁持久性Cookie. setMaxAge(0)---前提是有效路径必须一致.

3.Cooki的缺点
        1.不安全,因为cookie存储在浏览器端,
        2.cookie的值只能是String类型
        3.cookie是有大小限制的
        4.因为cookie和浏览器是绑定的,所以cookie的个数也是有限制的


session的概述
        Cookie本身是有大小和个数的限制的,Session是没有限制的
        Cookie的数据保存在客户端,Session数据保存在服务器端

1. Session的执行原理:
      基于Cookie的
2. 使用Session:
        2.1 获得Session:
                request.getSession();

Session是域对象:(面试中经常问到)
        session何时创建和销毁?作用范围:
                * 创建:服务器端第一次调用getSession()创建session.
                * 销毁:三种情况销毁session:
                        * 1.session过期. 默认过期时间为30分钟.
                        * 2.非正常关闭服务器.如果正常关闭session序列化到硬盘.
                        * 3.手动调用session.invalidate();
                * 作用范围:多次请求.(一次会话)








作者: 溜达的鱼    时间: 2017-12-19 21:24
感谢分享

作者: wheat    时间: 2017-12-19 22:22
好东西





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2