标准会话对象——StandardSession

Tomcat使用了一个StandardSession对象用来表示标准的会话结构,用来封装需要存储的状态信息。标准会话对象StandardSession实现了SessionSerializableHttpSession等几个接口,为什么需要实现这几个接口呢?Session接口定义了tomcat内部用来操作会话的一些方法;Serializable则是序列化接口,实现它是为了方便传输及持久化;HTTPSessionServlet规范中为会话操作而定义的一些方法,作为一个标准web容器实现它是必然的。另外还会存在一个StandardSessionFacade的外观类,外观设计模式相信大家都很熟悉了,前面的RequestResponse也使用了同样的模式,都是出于安全考虑引入一个外观类,它可以把一些tomcat内部使用的方法屏蔽了,只暴露web应用层允许调用的一些方法。

 标准会话对象——StandardSession

一个最简单的标准会话应该包括idMap<String, Object>结构的attributeid用于表示会话编号,它必须是全局唯一的,attribute用于存储会话相关信息,以kv结构存储。另外还应该包括会话创建时间、事件监听器、提供web层面访问的外观类等等。


点击订购作者《Tomcat内核设计剖析》

上一篇:浏览器同域名请求的最大并发数限制


下一篇:打响产品价格战 VMware和Citrix谁是交付虚拟桌面的最佳选择