• 简述session


    1.Session概述

    * session是服务器端技术
    
    * 服务器在运行时可以为每一个用户的浏览器创建一个其独享的session对象
    
    * 由于session为用户浏览器独享,所以用户在访问服务器的web资源时,可以把各自的数据放在各自的session中
    
    * 当用户再去访问服务器中的其它web资源时,其它web资源再从用户各自的session中取出数据为用户服务
    
    * session也是基于cookie技术的,传递是session的id值

    2.Session对象的API

    * void setAttribute(String name, Object value)
    * Object getAttribute(String name)
    * void removeAttribute(String name)
    * String getId()                                        -- session的空间有唯一的id值,获取该id值的。
    * void invalidate()                                     -- 销毁session对象
    * ServletContext getServletContext()                    -- 获取ServletContext域对象

     3.使用request对象来获取到session的对象

    * request.getSession()                                  -- 返回HttpSession对象,第一次调用,为你创建session对象(空间)

    4.Session的创建和销毁

    session对象的创建

    * 针对是每个用户的浏览器,为每一个浏览器都创建一个独享的session的对象。
    
    * request.getSession()      -- 该方法可以创建session的对象,但是也可以来获取到session对象
    
    * 根据cookie对象中是否有jsessionid的cookie,如果有,通过id值查找,找到了不用创建了,返回。如果没有找到,创建一个新的session对象。

    session对象的销毁

    * 关闭服务器销毁session
    
    * 非正常的原因关闭服务器,销毁session
    
    * 如果正常关闭服务器,session会被序列化到磁盘上。
    * 配置session的默认销毁时间,默认值是30分钟
    
    * 在tomcat/conf/web.xml文件中设置了session默认超时时间
    
                <session-config>
    
                    <session-timeout>30</session-timeout>
    
                </session-config>  
    
    * 设置session最大的存活的时间
    * void setMaxInactiveInterval(int interval)
    * 直接使用方法,销毁session * invalidate();

    5.Session域对象

    5.1.session的域对象

    * 作用:用来传递数据
    * 区别:每个域对象的存活时间不同!!

    5.2.方法

    * void setAttribute(String name, Object value)
    * Object getAttribute(String name)
    * void removeAttribute(String name)

    5.3.域对象(3个域对象最重要的)

    * request               -- 真实对象HttpServletRequest
    
            * 代表的是一次请求的范围
    
            * 在服务器端给客户度传递一些提示的信息和查询的数据
    
     * session               -- 真实对象HttpSession
    
            * 代表的是一次会话的范围(可以发送多次请求和得到多次响应)
    
            * 保存的都是和每个用户相关的数据(登录后需要把用户的信息,购买商品需要保存起来)
    

    * application -- 真实对象ServletContext * 代表的是一个WEB应用 * 保存全局共享的数据

     

  • 相关阅读:
    简单poi创建execl
    Orcale 存储过程实践总结
    PLSQL 创建自定义函数注意事项
    字符串算法模板整理
    多项式FFT/NTT模板(含乘法/逆元/log/exp/求导/积分/快速幂)
    UVALive
    Gym
    Gym
    Kattis
    Kattis
  • 原文地址:https://www.cnblogs.com/yadongliang/p/6232891.html
Copyright © 2020-2023  润新知