Cookie和Session-学习笔记03【Session快速入门、Session细节】

  • Java后端 学习路线 笔记汇总表【黑马程序员】
  1. Cookie和Session-学习笔记01【Cookie_快速入门、Cookie_细节】
  2. Cookie和Session-学习笔记02【Cookie案例、JSP改造Cookie案例】
  3. Cookie和Session-学习笔记03【Session快速入门、Session细节】
  4. Cookie和Session-学习笔记04【Session之验证码案例】

目录

第5节 Session快速入门

会话技术_Session_快速入门

会话技术_Session_原理分析

第6节 Session细节

会话技术_Session_细节1

会话技术_Session_细节2

钝化、活化 操作 —— Tomcat服务器

钝化、活化 操作 —— idea

会话技术_Session_细节3_sessio

会话技术_Session_特点


第5节 Session快速入门

会话技术_Session_快速入门

Session:主菜

1. 概念:服务器端会话技术,在一次会话的多次请求间共享数据,将数据保存在服务器端的对象中。(HttpSession)
2. 快速入门:
    1. 获取HttpSession对象:
        HttpSession session = request.getSession();
    2. 使用HttpSession对象:
        Object getAttribute(String name)
        void setAttribute(String name, Object value)
        void removeAttribute(String name)

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第1张图片  

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第2张图片

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第3张图片

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第4张图片

会话技术_Session_原理分析

Session:主菜
1. 概念
2. 快速入门
3. 原理
    * Session的实现是依赖于Cookie的。

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第5张图片 Session原理

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第6张图片

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第7张图片

第6节 Session细节

会话技术_Session_细节1

Session:主菜
1. 概念
2. 快速入门
3. 原理
4. 细节:
    1. 当客户端关闭后,服务器不关闭,两次获取session是否为同一个?【默认情况下,不是!】
        * 默认情况下,不是。
        * 如果需要相同,则可以创建Cookie,键为JSESSIONID,设置最大存活时间,让cookie持久化保存。
            Cookie c = new Cookie("JSESSIONID",session.getId());
            c.setMaxAge(60*60);
            response.addCookie(c);

    2. 客户端不关闭,服务器关闭后,两次获取的session是同一个吗?【不是同一个!】

    3. session什么时候被销毁?【服务器关闭;session对象调用invalidate() ;session默认失效时间(30分钟)】

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第8张图片

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第9张图片

会话技术_Session_细节2

Session:主菜
1. 概念
2. 快速入门
3. 原理
4. 细节:
    1. 当客户端关闭后,服务器不关闭,两次获取session是否为同一个?【默认情况下,不是!】

    2. 客户端不关闭,服务器关闭后,两次获取的session是同一个吗?【不是同一个!】
        * 不是同一个,但是要确保数据不丢失。tomcat自动完成以下工作
            * session的钝化:
                * 在服务器正常关闭之前,将session对象系列化到硬盘上(序列化)。
            * session的活化:
                * 在服务器启动后,将session文件转化为内存中的session对象即可(反序列化)。

    3. session什么时候被销毁?【服务器关闭;session对象调用invalidate() ;session默认失效时间(30分钟)】

钝化、活化 操作 —— Tomcat服务器

比如:在京东购物网站,用户张三将一款手机添加进了购物车。京东购物网站服务器重启,用户张三的购物车数据丢失,用户体验不好,容易丢失客户流量。

将项目打包为war包,部署到Tomcat下,用shutdown.bat正常关闭服务器,重启服务器时,Tomcat会自动读取上一次会话保留的session信息。两次session不是同一个,但内容一样。

附:此集视频 时长 12:09,内容较多!

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第10张图片

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第11张图片

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第12张图片

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第13张图片

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第14张图片

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第15张图片

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第16张图片

钝化、活化 操作 —— idea

idea只能做到session的钝化,但做不到session的活化(部署项目,一般不会在idea上部署)。

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第17张图片

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第18张图片

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第19张图片

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第20张图片

会话技术_Session_细节3_sessio

Session:主菜
1. 概念
2. 快速入门
3. 原理
4. 细节:
    1. 当客户端关闭后,服务器不关闭,两次获取session是否为同一个?【默认情况下,不是!】

    2. 客户端不关闭,服务器关闭后,两次获取的session是同一个吗?【不是同一个!】

    3. session什么时候被销毁?
        1. 服务器关闭
        2. session对象调用invalidate() 。
        3. session默认失效时间(30分钟)
            选择性配置修改    
            
                30
            

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第21张图片

Cookie和Session-学习笔记03【Session快速入门、Session细节】_第22张图片

会话技术_Session_特点

Session:主菜
1. 概念
2. 快速入门
3. 原理
4. 细节
5. session的特点
    1. session用于存储一次会话的多次请求的数据,存在服务器端。
    2. session可以存储任意类型,任意大小的数据。
    * session与Cookie的区别:
        1. session存储数据在服务器端,Cookie在客户端。
        2. session没有数据大小限制,Cookie有数据大小限制。
        3. session数据安全,Cookie相对不安全。

你可能感兴趣的:(JavaWeb,java,session,cookie,sessio,intellij,idea)