SpringFramework之javax.servlet.http.HttpSession

    注意: 阅读下文前,建议去看下JCP的Servlet规范。java

1.javax.servlet.http.HttpSession接口

               

                                                              图1 HttpSession接口web

    能够经过setAttribute方法在HttpSession中设置属性,那么有个问题,web容器中,底层上这个HttpSession的数据结构是什么?安全

    Tomcat-8.0.0中,有个StandardSession实现了HttpSession,这个StandardSession中有个attributes属性,以下List-1所示,底层上用ConcurrentHashMap来做为HttpSession的底层数据结构,保证并发操做的线程安全。数据结构

    List-1 并发

/**
 * The collection of user data attributes associated with this Session.
 */
protected Map<String, Object> attributes = new ConcurrentHashMap<>();

 

    invalidate方法,是指清空HttpSession中的全部数据,即在Tomcat-8.0.0中,清空底层attributes中的全部数据。this

相关文章
相关标签/搜索