第九章 session管理
来源:互联网 发布:淘宝客开通流程 编辑:程序博客网 时间:2024/06/06 10:55
1.概述
Catalina 通过一个叫管理器的组件来完成 session 管理工作,该组件由 org.apache.catalina.Manager interface 接口表示。一个管理器通常跟一个上 下文容器相关联,它负责创建、更行以及销毁 session 对象并能给任何请求组件 返回一个合法的session。
默认情况下管理器将 session 对象存储在内存中,但是 Tomcat 也允许将 session 对象存储在文件或者数据库中(通过 JDBC)。Catalina 在 org.apache.catalina.session 包中提供了 session 对象和 session 管理的相关 类型。
二、Sessions
在 servlet 编程中,一个 session 对象使用 javax.servlet.http.HttpSession 接口表示。该接口的标准实现是 StandardSession 类,该类在 org.apache.catalina.session 包中。但是出于安全的原因,管理器并不会将一 个 StandardSession 实例传递给 servlet。而是使用 org.apache.catalina.session 包中的外观类 StandardSession 类。在内部,一 个管理器使用了另一个外观:org.apache.catalina.Session 接口。 (门面模式)
三、StandardSession类
StandardSession 类是 Session 接口的标准是实现。另外,实现了 javax.servlet.http.HttpSession 和 org.apache.catalina.Session 之外,它 还实现了 java.lang.Serializable 接口来使得 Session 对象可序列化。
该类的构造器获得一个管理器实例来强制使得每个 Session 对象都有一个管理器。
四、管理器
管理器用来管理 Session 对象。例如它创建 Session 对象并销毁它们。管理器由 org.apache.catalina.Manager 接口表示。在 Catalina 中, org.apache.catalina.session 包中类 ManagerBase 类提供了常用函数的基本实 现。ManagerBase 类有两个直接子类:StandardManager 和 PersistentManagerBase 类。
在运行的时候,StandardManager 将 session 对象存放在内存中。但是,当停止 的时候,它将 Session 对象存放到文件中。当它再次启动的时候,重新载入 Session 对象。
PersistentManagerBase 类作为一个管理器组件将 Session对象存放到二级存储 器中。它有两个直接子类:PersistentManager 和 DistributedManager 类 (DistributedManager)类只在 Tomcat4 中有
- 第九章 session管理
- tomcat study 第九章:session管理
- 第九章内存管理
- 第九章--成本管理
- 第九章 内存管理
- 第九章:文件系统管理
- 第九章:Win32内存管理
- 第九章 Libgdx内存管理
- 第九章:管理维护sharding
- 第九章-项目人力资源管理
- 第九章 银行管理系统
- 第九章项目人力资源管理
- 第九章 租赁机构与管理
- 第九章:MongoDB管理维护sharding
- C语言第九章:内存管理
- OC - 第九章 内存管理( 初级 )
- 第九章 事件标志组管理
- Essential Qt 第九章 内存管理
- 欢迎使用CSDN-markdown编辑器
- C4 boom
- 使用Spring MVC统一异常处理实战
- 英语后缀总结
- 显示
- 第九章 session管理
- 大小写互换
- 爆炸(倒计时十秒)
- 知识点小谈:1)知其然与知其所以然;Know- How与Know- Why;
- sqlplus关于时间显示问题
- 微信小程序上手篇(1)
- 开闭原则
- 部署AlwaysOn第一步:搭建Windows服务器故障转移集群
- Android编程从程序员到架构师的高手之路-高焕堂Sundy(全部234课)