【发布时间】:2012-08-07 09:45:05
【问题描述】:
ColdFusion 会话与 J2EE 会话相比有什么好处?
ColdFusion session documentation 提到了 J2EE 会话的好处,但没有提到 ColdFusion 会话的任何优点。 J2EE 会话自 ColdFusion MX(2002 年发布)以来一直可用,但仍有很多人使用标准的 ColdFusion 会话。 J2EE 会话是否存在 ColdFusion 会话不存在的任何缺点?
J2EE 会话管理与 ColdFusion 会话管理相比具有以下优势:
- J2EE 会话管理使用特定于会话的会话标识符
jsessionid,它是在每个会话开始时重新创建的。- 您可以在 ColdFusion 页面和从 ColdFusion 页面调用的 JSP 页面或 Java servlet 之间共享会话变量。
- Session 范围是可序列化的(可转换为稍后可以完全恢复为原始对象的字节序列)。使用 ColdFusion 会话管理,会话范围是不可序列化的。只有可序列化的范围可以在服务器之间共享。
因此,请考虑在以下任何情况下使用 J2EE 会话管理:
- 您希望最大限度地提高会话安全性,尤其是在您还使用客户端变量时
- 您希望在单个应用程序中的 ColdFusion 页面和 JSP 页面或 servlet 之间共享会话变量。
- 您希望能够手动终止会话,同时维护客户端标识 cookie 以供客户端范围使用。
- 您希望支持集群会话;例如,支持服务器之间的会话故障转移。
【问题讨论】:
-
从内存来看,CF 本地会话不使用会话 cookie,因此可以在浏览器/机器重新启动后持续存在,而所有默认 J2EE 服务器都使用会话 cookie,因此您的会话只能持续与浏览器一样长开了。很久没查这个了,不过可能有用
-
是的,情况仍然如此,好点。把它放在一个答案中,我会投赞成票,尽管我认为这在渗透测试中是一个负面因素。
标签: session jakarta-ee coldfusion