Module  java.base
软件包  javax.net.ssl

Interface SSLSessionContext



  • public interface SSLSessionContext
    A SSLSessionContext表示与单个实体相关联的一组SSLSession 例如,它可以与同时参与许多会话的服务器或客户端相关联。

    并非所有环境都将包含会话上下文。

    SSLSessionContext参数影响会话的存储方式:

    • 会话可以设置为在指定的时间限制后到期。
    • 可以限制在上下文中存储的会话数。
    可以根据会话ID检索会话,可以列出SSLSessionContext所有会话标识。
    从以下版本开始:
    1.4
    另请参见:
    SSLSession
    • 方法摘要

      所有方法  接口方法  抽象方法 
      Modifier and Type 方法 描述
      Enumeration<byte[]> getIds​()
      返回所有会话ID的枚举,分组在此 SSLSessionContext
      SSLSession getSession​(byte[] sessionId)
      返回绑定到指定会话ID的 SSLSession
      int getSessionCacheSize​()
      返回用于存储 SSLSession对象的高速缓存的大小,分组在此 SSLSessionContext
      int getSessionTimeout​()
      返回的超时限制 SSLSession级这个组合的对象 SSLSessionContext
      void setSessionCacheSize​(int size)
      设置用于存储 SSLSession对象的高速缓存的大小,分组在此 SSLSessionContext
      void setSessionTimeout​(int seconds)
      设置超时限制 SSLSession级这个组合的对象 SSLSessionContext
    • 方法详细信息

      • getSession

        SSLSession getSession​(byte[] sessionId)
        返回绑定到指定会话ID的 SSLSession
        参数
        sessionId - 会话标识符
        结果
        SSLSession或如果指定的会话标识不引用有效的SSLSession, SSLSession null。
        异常
        NullPointerException - 如果 sessionId为空。
      • getIds

        Enumeration<byte[]> getIds​()
        返回所有会话ID的枚举,分组在此 SSLSessionContext
        结果
        枚举所有Session ID
      • setSessionTimeout

        void setSessionTimeout​(int seconds)
                        throws IllegalArgumentException
        设置超时限制SSLSession级这个组合的对象SSLSessionContext

        如果超时限制设置为“t”秒,则会话超过其创建时间后的超时限制“t”秒。 超过会话的超时限制时, SSLSession对象无效,将来的连接无法恢复或重新加入会话。 超过这个超时的会话,只要这个SSLSessionContext的超时限制被更改,就立即进行SSLSessionContext

        参数
        seconds - 新会话超时限制(以秒为单位) 零意味着没有限制。
        异常
        IllegalArgumentException - 如果指定的超时时间是 < 0
        另请参见:
        getSessionTimeout()
      • getSessionTimeout

        int getSessionTimeout​()
        返回的超时限制SSLSession级这个组合的对象SSLSessionContext

        如果超时限制设置为“t”秒,则会话超过其创建时间后的超时限制“t”秒。 超过会话的超时限制时, SSLSession对象无效,将来的连接无法恢复或重新加入会话。 当这个SSLSessionContext的超时限制更改时,会立即检查超过超时限制的会话。

        结果
        会话超时限制(以秒为单位) 零意味着没有限制。
        另请参见:
        setSessionTimeout(int)
      • setSessionCacheSize

        void setSessionCacheSize​(int size)
                          throws IllegalArgumentException
        设置用于存储 SSLSession对象的高速缓存的大小,分组在此 SSLSessionContext
        参数
        size - 新会话缓存大小限制; 零意味着没有限制。
        异常
        IllegalArgumentException - 如果指定的大小是 < 0
        另请参见:
        getSessionCacheSize()
      • getSessionCacheSize

        int getSessionCacheSize​()
        返回用于存储 SSLSession对象的高速缓存大小,分组在此 SSLSessionContext
        结果
        会话高速缓存的大小; 零意味着没有大小限制。
        另请参见:
        setSessionCacheSize(int)