gpt4 book ai didi

Java Servlet Session 里面应该包含什么以及重定向

转载 作者:行者123 更新时间:2023-11-30 04:54:33 29 4
gpt4 key购买 nike

我想知道哪些数据应该进入 session 。假设我有一个用户对象,其中包含表示图像链接的对象列表。我应该在 session 中保存用户对象的用户名并使用它来查询数据库中的用户对象以及图像的链接,还是应该保存整个对象、 session 中包含的列表并在没有更新的情况下使用它需要吗?这是一个糟糕的策略吗?

我是新手,所以如果这没有任何意义,我很抱歉。如果 requestdispatcher 代替了 sendredirect,是否可以执行encodeurl?看起来如果我使用请求调度程序,我必须在 cookie 中发送 jessesion id。

最佳答案

在 session 中存储完整的对象图:

优点:

  • 更快 - 只要适合,所有内容都始终在内存中
  • 更简单 - 您正在使用对象,不需要额外的数据库交互层

缺点:

  • 资源消耗 - 您的 session 将消耗大量资源,尤其是在对象图很大的情况下。一个拥有数千张图像的用户将使您的服务器爬行
  • 可扩展性 - 通过易于序列化的对象来分发小型 session 要容易得多
  • 一致性 - 当数据库更改时,您必须确保 HTTP session 也更新。这可能会很痛苦

话虽如此,您应该保持 HTTP session 尽可能小,并且当性能成为问题(频繁的数据库查询)时考虑缓存。

关于Java Servlet Session 里面应该包含什么以及重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8976622/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com